Shell 多命令执行符与管道符“|”

多命令执行符

执行符使用格式效果
;命令1;命令2顺序执行,无其他关联
&&命令1 && 命令2逻辑与:
命令1执行正确,继续尝试执行后续命令(命令2)
命令1执行错误,中止执行命令后续命令(命令2)
一句话:和编程里if的条件判断执行一样
||命令1 || 命令2逻辑或:
命令1执行错误,继续尝试执行后续命令(命令2)
命令1执行正确,中止执行命令后续命令(命令2)
一句话:和编程里if的条件判断执行一样

管道符“|”

  • 管道符(pipe)用“|”这个界定符号表示,如果需要对linux命令的输出结果进行再次处理,就可以使用管道符+管道命令解决。
  • 管道符“|”仅能处理由前一个命令执行后传来的正确信息,如果命令执行异常,无法对异常信息进行处理。

管道符的用法格式:
bash命令 | 管道命令
以上用法中提到的“管道命令”,是指该命令必须能够接收标准输出,这样的命令才是管道命令,例如grep,less,head,tail等命令。以下列出部分管道命令的分类。

  1. 选取命令:cut,grep
  2. 排序命令:sort,wc,uniq
  3. 双向重定向:tee
  4. 字符转换命令:tr,col,join,paste,expand
  5. 切割命令:split
  6. 参数代换命令:xargs

例:通过ps命令可以查看系统中的进程,并在返回结果中筛选apache2进程:
ps -aux | grep apache2

对于不能接收收标准输出的命令,例如:echo,使用xargs命令解决

错误示范:(此例打印为空)

echo 111 | echo

正确示范:(此例能正常输出111)

echo 111 | xargs echo
echo "$(cat file.log)" # 解决$()内换行丢失问题

参考链接:
linux管道符“|”详解
Linux之管道符与多命令执行符
xargs命令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值