!=
の連鎖条件は、思考の反転を必要とする。
私は、case ... esac
構造体を使用してこれらの条件をテストする方がはるかに明確です。あなたが本当に*)
ケースを見つけるためにしようとしているとして、abc_def_data (etc)
試合のためのアクションは何もすることができますが、単にコードの次のセクションにスキップすること
が
case "${dbname}" in
abc_def_data|abc_def01_data)
#dbg echo "matched, but for real code replace with just a ':' char"
:
;;
*)
echo "didn_t match any expected values for \$dbname"
echo exit 1
;;
esac
注意、あなたはシェルのヌルCMDを必要とするだけでしょう:
。私は、あなたのシェルは終了しませんあなたが/コピーした場合、コマンドラインにこれを貼り付けるだけので、echo exit 1
を持って
編集1
注意。実際のコードでは、echo
を削除し、exit
が動作することを期待してください。
編集も
2、ケースマッチ(abc_def_data**|**abc_def01_data
)で|
charは本質的であることに注意しOR
(私はそれが「ケース・マッチ」コンテキストで何かを呼ばれると思います)。 IHTH
あなたは決して$サーバーを使用していませんが、それは意図的ですか? – Daniele
条件は常にtrueです。 – Mithrandir
私はコードの一部だけをコピーしました... $ serverはスクリプトの後半で使用されます... @Daniele – MRKR