管道 | 特殊的重定向

前一个命令的输出作为后一个命令的输入;

管道连接的命令数没有限制;

who|wc−l统计用户数ps |sort|more 按序显示当前进程名

字符:具有特定作用的特殊字符

,<,>>,<< 重定向

符号 功能
> 输出重定向
>

输出重定向并追加到文件;
< 输入重定向;
<< 输入重定向并追加到文件;

” 字符串定界符

字符串一般放在一对双引号中间,防止变量

被空格分开,同时又允许$扩展

通配符

符号 功能
* 匹配零个或多个字符
? 匹配任意单个字符
[…] 匹配方括号内包含任何一个字符
[^…] 匹配不包含在方括号内的任何一个字符
{s1,s2,…,sn } 匹配集合中任意一个字符串

命令替换

command , $(command):替换为command的输出

$echo the date is `date`
the date is 2017年 12月 13日 星期三 21:26:35 CST
$echo there are$(who|wc -l)users on the system
there are1users on the system

命令序列和组合命令

符号 功能
; 组成命令序列
(…..) 组合命令
$date;pwd;ls
$date>date.txt;ls;pwd>pwd.txt
(date;ls;pwd)>out.txt

条件执行序列

符号 功能
如果前一个命令执行失败,执行下一个命令
&& 如果前一个命令执行成功,执行下一个命令

(或代表 ||)

& 后台运行

符号 功能
command & 后台运行,你关掉终端会停止运行
nohup command & 后台运行,你关掉终端也会继续运行

shell脚本

一个shell脚本可以包含:

(1)命令

(2)位置参数

(3)变量及表达式

(4)结构控制语句

(5)函数

(6)其他shell脚本

Shell脚本常用命令

符号 功能
break 跳出一层循环
: 空命令
continue 跳出一次循环
. 在当前shell中执行命令
echo 输出字符串(带换行符)
eval 对参数求值
exit n 以退出码结束脚本运行(0表示运行成功)
export 声明环境变量
printf 输出字符串(可指定格式)
$((…)) 表达式求值
return 函数返回(默认返回最后一条命令的退出码)
set 为shell设置参数变量
shift 除了$0的所有参数变量左移一位
find 搜索文件
grep 过滤字符串

正则表达式

如何

linux的SHELL编程的更多相关文章

  1. Linux 下shell 编程学习脚手架

    linux body { font-family: Helvetica, arial, sans-serif; font-size: 14px; line-height: 1.6; padding-t ...

  2. Linux下Shell编程

    Linux的shell编程 1.什么是shell? 当一个用户登录Linux系统之后,系统初始化程序init就为每个用户执行一个称为shell(外壳)的程序. shell就是一个命令行解释器,它为用户 ...

  3. 【Hadoop离线基础总结】linux的shell编程

    linux的shell编程 基本了解 概述 Shell是一个用C语言编写的程序,通过shell用户可以访问操作系统内核服务,它类似于DOS下的command和后来的cmd.exe.Shell既是一种命 ...

  4. linux中shell编程

    shell编程 1 echo -e 识别\转义符 \a \b \t \n \x十六进制 \0八进制 等等 #!/bin/bash echo -e "hello world" 执行脚 ...

  5. linux下shell编程示例-获取进程id

    今天初步学习了一下linux下的shell编程,简单记录一下测试用例 1.编辑shell脚本文件如下: #!/bin/bashecho "hello bash linux"echo ...

  6. linux之shell编程基本语法

    Shell是用户与内核进行交互操作的一种接口,目前最流行的Shell称为bash Shell.Shell也是一门编程语言<解释型的编程语言>,即shell脚本<就是在用linux的s ...

  7. Linux学习——shell编程之变量

    shell编程之变量:Linux shell编程基础中的变量. 包括Bash变量的分类和各变量的详细使用,如:用户自定义变量.环境变量.语系变量.位置参数变量和预定义变量. 1:什么是Bash变量? ...

  8. 3. Linux的shell编程

    Shell 是一个用 C 语言编写的程序, 通过 Shell 用户可以访问操作系统内核服务.它类似于 DOS 下的 command 和后来的 cmd.exe.Shell 既是一种命令语言,又是一种程序 ...

  9. Linux之shell编程的基本使用

    1.Shell shell是一个命令行解释器,它为用户提供了一个向 Linux 内核发送请求以便运行程序的系统级程序 2.shell编程打印hello world 2.1 代码部分 #!/bin/ba ...

  10. Linux学习——shell编程之正则表达式和字符处理命令

    shell编程之正则表达式 一 正则表达式 1 什么是正则表达式 正则表达式用于描述字符排列和匹配模式的一种语法规则.它主要用于字符串的模式分隔.匹配.查找及替换操作. 2 shell编程之正则表达式 ...

随机推荐

  1. SharePoint中取得ACL和组中用户数量

     SharePoint中取得ACL和组中用户数量 1. 取得ACL的数量: select COUNT(ra.PrincipalId) as [Count],p.ScopeUrl from [WSS_C ...

  2. Office WORD如何取消开始工作右侧栏

    工具-选项-视图,取消勾选"启动任务窗格"  

  3. mac 通过 终端 ssh 远程连接 centos 服务器

    mac 通过 终端 ssh 远程连接 centos 服务器 在终端下输入 ssh -l root 204.74.*.*      就可以连接了,这是端口没变的情况,还是原来的22 ssh -p 448 ...

  4. 自定义的强大的UITableViewCell

    UITableView的强大更多程度上来自于可以任意自定义UITableViewCell单元格.通常,UITableView中的Cell是动态的,在使用过程中,会创建一个Cell池,根据每个cell的 ...

  5. Mac下Git项目使用的.gitignore文件

    https://www.gitignore.io/ 这个网站可以搜索特定项目.系统所需要的.gitignore 我现在主要是在Mac上用Visual Studio Code进行开发,所以直接搜索Mac ...

  6. 本人会linux系统的各种版本的安装,近期发教程

    小弟虽然刚刚踏入职场,可是咱大学也不是打酱油过的啊,研究过各种版本系统的安装,也都均已经实践,勿喷,有问题 咱们可以相互探讨!

  7. Activity动态添加Fragment时遇到的问题

    1.Activity动态调用代码 TitleFragement a = new TitleFragement();        getFragmentManager().beginTransacti ...

  8. YTU 2920: Shape系列-7

    2921: Shape系列-7 时间限制: 1 Sec  内存限制: 128 MB 提交: 156  解决: 129 题目描述 小强做的Shape类在本次的测试中出了点状况,发现原来是其中的area函 ...

  9. codeforces 682C C. Alyona and the Tree(dfs)

    题目链接: C. Alyona and the Tree time limit per test 1 second memory limit per test 256 megabytes input ...

  10. 守护线程Daemon的理解

    1.守护线程伴随着主线程的销毁而销毁: 2.jvm虚拟机中有很多守护线程,随着main函数的结束而结束,自动回收栈中的内容. Thread t1 = new Thread(){ @Override p ...