日期:2014-05-16 浏览次数:20648 次
命令执行顺序
?
如果希望在成功地执行一个命令之后再执行另一个命令,或者在一个命令失败后再执行另一个命令,& &和| |可以完成这样的功能
?
?
使用&&
& &左边的命令(命令1)返回真(即返回0,成功被执行)后,& &右边的命令(命令2)才能够被执行;换句话说,“如果这个命令执行成功 & &那么执行这个命令” 。
?
比如
touch file && echo 'touch file success'
?
使用||
如果 | |左边的命令(命令1)未执行成功,那么就执行 | |右边的命令(命令2);或者换句话说,“如果这个命令执行失败了 || 那么就执行这个命令” 。
?
?
用()和{ }将命令结合在一起
?
为了在当前s h e l l中执行一组命令,可以用命令分隔符隔开每一个命令,并把所有的命令
用圆括号()括起来。
它的一般形式为:
(命令1;命令2;. . .)
?
如果使用{ }来代替() ,那么相应的命令将在子s h e l l而不是当前s h e l l中作为一个整体被执
行,只有在{ }中所有命令的输出作为一个整体被重定向时,其中的命令才被放到子 s h e l l中执
行,否则在当前s h e l l执行。它的一般形式为:
{命令1;命令2;. . . }