2

これら2つの違いは何ですか?

  1. &&と の使用||:

    command1 && command2 || command3
    
  2. ifと の使用else:

    if command1  
    then  
        command2  
    else  
        command3  
    fi
    
4

2 に答える 2

2

最初の例では、command1 または command2 のいずれかが失敗した場合、command3 が実行されます。command1 が成功したが、command2 が失敗した場合、command3 が実行されます。if-then-else の例では、command1 が失敗した場合にのみ command3 が実行されます。

つまり、最初のものを if-then-else に変換すると、次のようになります。

if command1
then
    if !command2
    then
        command3
    fi
else
    command3
fi

command1=true、command2=false、および command3=echo 'something' を使用すると、違いがわかります。&&-||バージョン:

true && false || echo 'something'

出力として得somethingられます。if-then-elseバージョンを使用する場合:

if true
then
    false
else
    echo 'something'
fi

出力はありません。

于 2013-06-26T02:43:55.833 に答える