首页 > 代码库 > [Shell]Bash基本功能:多命令顺序执行与管道符
[Shell]Bash基本功能:多命令顺序执行与管道符
/*-----------------------------------------------------------------------------------------------
@黑眼诗人 <www.chenwei.ws>
-----------------------------------------------------------------------------------------------*/
一. 多命令顺序执行
分号(;)
逻辑与(&&)
逻辑或(||)
分号:
ls; date; cd /user; pwd
执行顺序:命令顺序执行,命令之间不存在关系,互不影响
作用:连接多个命令,简化操作
例子:
dd if=输入文件 of=输出文件 bs=字节数 count=个数 (用于复制磁盘)
(date; dd if=/dev/zero of=/home/testfile bs=1k count=10000; date)#统计执行时间
选项:
if=输入文件 指定源文件或源设备
of=输出设备 指定目标文件或目标设备
bs=字节数 指定一次输入/输出多少字节,即把这些字节看做一个数据块
count=个数 指定输入/输出多少个数据块
逻辑与:
ls && echo yes
执行顺序:只有第一条命令成功执行,才会执行第二条命令
作用:命令先后存在逻辑关系,必须有一定的执行顺序的情况
逻辑或:
ls || echo no
执行顺序:第一条成功执行,第二条不执行; 第一条非正确执行,第二条才会执行
作用:判断前一条命令是否正确执行
逻辑与与逻辑或组合使用:
命令 && echo yes || echo no # 用这种方式判断命令是否执行
二. 管道符:
命令1 | 命令2 #命令一的结果作为命令二的操作对象
例子:
ls -l | more # 将命令的正确执行结果分屏显示
grep [选项] ‘搜索内容‘ 文件名 #在文件中搜索符合条件的字符串
选项:
-i 忽略大小写
-n 输出行号
-v 反向查找
--color=auto 搜索出的关键字用颜色显示
(查看当前计算机有多少个远程连接)