
私はifステートメントに関するすべての記事を読んでいますが、それらのどれも私の問題を解決していないようです。私はシェルスクリプトを作成しており、操作(加算、減算、除算)に対するユーザー入力を検証する必要があります。私のコードは次のとおりです。
valid_operator(){
if [[ "$operator" != "+" || "$operator" != "-" || "$operator" != "/"]]; then
echo "Sorry, $operator, ++ is not a valid operator. Please re-enter valid operator"
main
fi
}
答え1
IIUCの前にスペースがないので、これは単に構文エラーだと思います。値がテストされていない場合は、]]
IIUCが必要ですか?ウィジェットをテストしましたが、正常に動作します。true
$operator
if-then
valid_operator(){
if [[ "$operator" != "+" && "$operator" != "-" && "$operator" != "/" ]]; then
echo "Sorry, $operator, ++ is not a valid operator. Please re-enter valid operator"
main
fi
}
3つの入力XORゲート :)