0

bashの引数にデフォルト値を指定する方法、または引数が設定されていない場合にエラーメッセージを表示して終了する方法を知っています。(ここから)

引数が設定されているかどうかを確認し、設定されていない場合はコードを実行して終了します。

if [$1 is not set]; then
  execute command
fi

別のコマンドのラッパーを書いています。最初の引数が設定されていない場合(実際には入力ファイル名です)、独自の使用法メッセージがあります。今のところハードコーディングしている他の入力があります。bashスクリプトの実際のコマンドは次のようなものです。

command $1 12 3124 534

スクリプトに$1が送信されなかった場合は、独自のヘルプメッセージを呼び出したいと思います。

4

1 に答える 1

4

引数の長さを確認してください。

if (( $# < 1 )); then
    echo 'There are no arguments, so you can bet that $1 was not set.'
fi

通常、シェルで変数の値が空でないかどうかを確認するのは簡単です。

[ -n "$val" ]

ただし、名前が宣言されているかどうかを確認したい場合は、 BashFAQ83を参照してください。

于 2013-01-16T17:35:19.407 に答える