&& amp;的反义词是什么?在bash?

时间:2011-11-27 18:15:44

标签: linux macos bash unix zenity

我的bash脚本是

zenity --question --text=Continue? && echo Continuing...

如果用户选择了no,我怎么能这样做呢?即:

zenity --question --text=Continue? && echo Continuing... !&& echo Stopping...

5 个答案:

答案 0 :(得分:6)

这并不是&&的反面,但这样的事情可能会这样:

zenity --question --text=Continue? && echo Continuing... || echo Stopping...

答案 1 :(得分:1)

这是逻辑OR,||

zenity --question --text=Continue? || echo Continuing...

(所以true && cmdfalse || cmdcmd都做同样的事情。)

答案 2 :(得分:0)

使用||创建“OR列表”:

zenity --question --text=Continue? && echo Continuing... || echo Stopping...

请参阅http://www.gnu.org/s/bash/manual/bash.html#Lists

答案 3 :(得分:0)

if zenity --question --text='Continue?'
then echo Continuing...
else echo Stopping...
fi

答案 4 :(得分:0)

可能有一种方法可以在一行上完成,但我通常使用以下内容,我发现它更具可读性:

if zenity --question --text=Continue?
then
        echo Continuing...
else
        echo Stopping...
fi