在执行某个命令的时候,有时候需要依赖于前一个命令是否执行成功。
&&
命令1 && 命令2
mv /apps/bin /apps/dev/bin && rm –r /apps/bin
||
命令1 || 命令2
命令1未执行成功就执行命令2。
cp wopper .txt oops.txt || echo “if you are seeing this cp failed”
使用 () , {} 将命令结合在一起
在当前 shell 中执行一组命令,可以使用 ()
( 命令1;命令2;…… )
如果使用 {} , 相应的在子 shell 而不是当前 shell 中作为一个整体被执行,只有在{} 中所有命令的输出作为一个整体被重定向时,其中的命令才被放到子 shell 中执行,否则在当前 shell 执行。
注 : 在摆弄些 shell 脚本时,使用 && 和 || 对构造判断语句非常有用。