2013-07-08 20 views
0

我的代码如下:制作的单行if语句更看中的

if [[ $? -eq 0 ]]; then 
$command1; 
$command2; 
$command3; 
fi 

我能有一个衬垫做?我有这个,但寻找更好,更花哨的东西。

if [[ $? -eq 0 ]]; then $command1;$command2;$command3; fi 
+0

你怎么能提高你的一条线? – squiguy

+0

为什么它是'幻想'? – icedwater

回答

1

你试图oneliner工作得很好,因为在这个例子中:

commnd1='echo foo' 
commnd2='echo bar' 
commnd3='echo baz' 
true 
if [[ $? -eq 0 ]];then $commnd1;$commnd2;$commnd3;fi 

您还可以使用&&和命令分组:

[[ $? -eq 0 ]] && { cmd1; cmd2; cmd3; } 
+0

你不需要测试'$?':'previous_command && {cmd1; CMD2; CMD3; }' –

+0

@aragaer:不会工作 - '0:command not found' –