1

私は bash をいじってみたり、ドキュメントやいくつかのスレッドを試したりしましたが、うまくいかないようです。

S=(true false)
if (( ${S[0]} || ${S[1]} ))
then
    echo "true"
else
    echo "false"
fi
  • ブール式はbashでどのように評価できますか? (上記のスニペットを修正する機会はありますか?)
  • なしで評価する可能性はありますかif、つまり、変数に直接割り当てます(if操作なし)?
4

2 に答える 2

3

の代わりにS=(true false)、次のように配列を作成する必要があります。

S=(1 0)

次に、この if ブロック:

if (( ${S[0]} || ${S[1]} ))
then
    echo "true"
else
    echo "false"
fi

出力します:

真実

true/false は、BASH では文字列 "true" と "false" として扱われることに注意してください。

于 2013-08-14T18:18:30.847 に答える