効果は何ですか!お問い合わせの意味はif[! -n "$1"] [repeat]。

効果は何ですか!お問い合わせの意味はif[! -n "$1"] [repeat]。

私は次の文の意味を理解しようとしています。

if [ ! -n "$1" ]

残りの文で私が理解したのは:if私が理解していないif文()は!文字列の長さがゼロであることを確認し(-n)、最初のパラメータ("$1")です。

答え1

~からGNU Bashリファレンスマニュアル:

-n ひも

長さが真の場合ひも0ではありません。

そして

! 表現

もし本当だ表現偽です。

したがって、!文字列が$1空の場合は、実際には否定演算子をテストします。デフォルトではテストと同じでなければなりません。

if [ -z "$1" ]

関連情報