シェルコマンド

  

2進比較演算子、変数の比較、または数値の比較の下での数値および文字列の比較演算
数値と文字列の違いに注意してください。

整数比較

-eq equals if ["$ a" -eq "$ b"] -neが等しくない場合(例:if ["$ a" -ne "$ b"] -gtがより大きい場合)。 $ [" -gt" $ b"] -geは、以下のように、等しいかそれより大きい。例えば、if ["$ a" -ge "$ b"] -ltがより小さい場合。 if ["$ a" -le "$ b"]<より小さい(二重括弧が必要)のように、$ b "] -leは以下のようになります。((" "$ a"< "$ b" (( "$ a"< = "$ b"))>よりも大きい(二重括弧が必要)のように、<= =(二重括弧が必要)以下のようになります。(( "$ a";(> "$ b"))> = =以上(二重括弧が必要)、次のようになります。(( "$ a";> = "$ b"))

文字列比較=例えば:if ["$ a" = "$ b"] ==が等しい場合、次のようになります。if ["$ a" == "$ b"]、=等価な場合注:==関数[[]]と[]の動作は違います。 1 [[$ a == z *]]#$ aが「z」(パターンマッチング)で始まる場合は、trueになります2 [[$ a == z *"]] aがz *(文字の一致)と等しい場合、結果はtrueになります3 [$ a == z *]#ファイルのグロビングと単語分割が発生します4 [" $ a" ==" z *"]# z *(文字の一致)と等しい場合、結果は真になりますFile globbingは、" *。c"のようなファイルの簡易表記です。

しかしfile globbing厳密な正規表現ではありませんが、ほとんどの場合構造は似ています。

!=次のように等しくありません。if [" $ a"!=" $ b"] [[]]構造内でパターンマッチングを使用してください。

<より小さい、ASCIIのアルファベット順で例:if [[" $ a"<" $ b"] if ["注:[]構造体では、<<"をエスケープする必要があります。

>は、ASCIIのアルファベット順になります。例:if [ ,null,null,3],["$ a" /gt; "$ b"]] if ["$ a" />> "$ b"]注:[]構造内 ";>"この演算子アプリケーションの例については、例26-11を参照してください。

-z文字列は" null"です。長さは0です。

- n stringが" null"ではない注:[]構造で-nを使用するのは、変数を生成するために""が原因である必要があります。!-zを使用するには、" ""で参照されていない文字列自体は、[]構造体に配置されます。一般的には機能しますが、安全ではありません。文字列をテストするために""を使用することをお勧めします。

Copyright © Windowsの知識 All Rights Reserved