&& 和 ; 的区别
前言
在 Linux Shell 中执行多个命令时经常会看到 command && command 或者 command ; command 的写法。
这两种写法唯一的区别就是两个命令之间的分隔符: && 和 ;。
| 分隔符 | 说明 |
|---|---|
&& | 前一个命令执行成功,才会继续执行之后的命令。如果前一个命令执行失败,则取消继续执行后面的命令。 |
; | 无论前一个命令成功与否,都执行后面命令。 |
&& 示例
前一个命令执行成功,才会继续执行之后的命令:
$ cd book && cat README
Hello World
如果前一个命令执行失败,则取消继续执行后面的命令:
$ cd unknowndir && cat README
-bash: cd: unknowndir: No such file or directory
; 示例
无论前一个命令成功与否,都执行后面命令:
$ cd unknowndir ; cat README
-bash: cd: unknowndir: No such file or directory
cat: README: No such file or directory