shell技巧分享(八)

这是一个系列文章,主要分享shell(部分功能仅适用于bash)的使用建议和技巧,每次分享3点,希望你能有所收获。

1 &&的作用

如果命令之间使用&&分隔,相当于逻辑“与”,此时只有前一个命令执行成功,后一个命令才会执行,如果前一个命令执行失败,后一个命令就不会执行。由示例中可以看到,当test.log文件存在时,会正常打印ok,但是删除test.log文件后,cat test.log执行失败,不会执行第二条命令,所以不打印ok。

2 ||的作用

如果命令之间使用||分隔,相当于逻辑“或”,此时只有前一个命令执行失败,后一个命令才会执行,如果前一个命令执行成功,后一个命令就不会执行。由示例中可以看到,当test.log文件存在时,不会打印ok,但是删除test.log文件后,cat test.log执行失败,此时会执行第二条命令,所以打印ok,行为和&&相反。

3 分号的作用

如果命令之间使用分号分隔,那么命令会依次执行,不管分号前的命令是否执行成功,后续命令都会执行。由示例中可以看到,就算将test.log文件删除,也会正常打印ok。

综上,三种符号的作用总结如下:

cmdA && cmdB:只有cmdA执行成功,才会执行cmdB

cmdA || cmdB:只有cmdA执行失败,才会执行cmdB

cmdA ; cmdB:不管cmdA是否执行成功,都会执行cmdB

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180629G1Y9RL00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券