私は、変数の値に基づいてアクションを実行するBashスクリプトを持っています。 case文の一般的な構文は次のとおりです。Bashのcase文で空の文字列をテストするにはどうすればよいですか?
case ${command} in
start) do_start ;;
stop) do_stop ;;
config) do_config ;;
*) do_help ;;
esac
コマンドが認識されない場合、私は何のコマンドが用意されていない場合、デフォルトのルーチンを実行し、のdo_helpしたいと思い
。結果は予測可能だった
case ${command} in
) do_default ;;
...
*) do_help ;;
esac
、私が思う:私は、このようにケースの値を省略しようとしたこれにより
case ${command} in
^$) do_default ;;
...
*) do_help ;;
esac
:
syntax error near unexpected token `)'
は、その後、私は正規表現で私の最高のショットを使用してみました空の$ {command}が*の場合に入ります。
私は不可能にしようとしていますか?
case _${command} in
_start) do_start ;;
_stop) do_stop ;;
_config) do_config ;;
_) do_default ;;
*) do_help ;;
esac
は明らかにあなたが好きな接頭辞を使用することができます
どのようにコマンドが提供されていますか? stdinを通して? – Oak