开篇词
我们可以借助 Linux 提供的控制操作符,用于方便命令的使用以及命令执行结果的处理。
我们为这两个控制操作符准备一些测试数据:
printf '%s\n' 'File One First Line' 'File One Second Line' > file1
printf '%s\n' 'File Two First Line' 'File Two Second Line' > file2
cat file1
cat file2
双与操作符
我们可以借助双与号来将一系列命令组合起来并按顺序逐个执行:
&&
双与号用法
我们可以按顺序打印两个文件的内容:
cat file1 && cat file2
当双与操作符中有一个命令运行失败时
当有一个命令运行失败时,其后的所有命令云不会被运行。
我们试一下打印一个不存在的文件:
cat file11 && cat file2
双或操作符
另一个控制符的运作方式不太一样,只有当前一个命令运行失败时才会运行下一个命令:
||
双或用法
我们可以打印其中一个文件的内容,并且当前一个文件不存在时,才打印接下来文件的内容:
cat file1 || cat file2
当双或操作符中有一个命令运行失败时
当有一个命令运行失败时,下一个命令就会被运行:
我们打印一个不存在的文件:
cat file11 || cat file2
忽略错误消息
我们可以将错误消息重定向至 null:
cat file11 2> /dev/null || cat file2
我所撰写的英文版本
28. Bash Shell - Most Commonly Used Control Operators
引用
参见
想看手册的其他内容?请访问该手册的所属专栏:《Linux 管理员手册:既简单又深刻》