Bash シェルスクリプトで入力引数の存在を確認する 質問する

Bash シェルスクリプトで入力引数の存在を確認する 質問する

入力引数の存在を確認する必要があります。次のスクリプトがあります

if [ "$1" -gt "-1" ]
  then echo hi
fi

私は

[: : integer expression expected

最初に入力引数1が存在するかどうかを確認するにはどうすればよいですか?

ベストアンサー1

それは:

if [ $# -eq 0 ]
  then
    echo "No arguments supplied"
fi

この$#変数は、スクリプトに渡された入力引数の数を示します。

または、次のように引数が空の文字列かどうかを確認することもできます。

if [ -z "$1" ]
  then
    echo "No argument supplied"
fi

スイッチ-zは、の展開が"$1"null 文字列かどうかをテストします。 null 文字列の場合は、本体が実行されます。

おすすめ記事