2つの変数を持つIfステートメント - Bash

2つの変数を持つIfステートメント - Bash

両方の変数を同時に調べるIFステートメントを作成しようとしています。

たとえば、$VARA $VARB のような 2 つの変数があります。

どちらもゼロまたはゼロ以外の値を含みます。両方をチェックし、一方がゼロでない場合は1つのアクションを実行し、両方がゼロである場合は別のアクションを実行するifステートメントが必要です。

単一変数を使用すると、次のようにできます。

if [ $VARA -ne 0 ]
then echo 'The operation failed! VARA is not equal to 0'
else echo 'The operation suceeded! VARA is equal to 0'
fi

ところで、VARAとVARBを同時に確認する方法がわかりません。ありがとうございます。

答え1

if [ "$VARA" -eq 0 ] && [ "$VARB" -eq 0 ]
then echo 'both are zero, do something'
else echo 'do something else'
fi

答え2

if (( var_a == 0 && var_b == 0 )); then
   # ...
fi

Bashは算術評価に常に((...))を使用します。

関連情報