シェルテストコマンド
シェルのテストコマンドは、特定の条件が真であるかどうかを確認するために使用され、値、文字、ファイルをテストできます。
数値テスト
パラメータ | 説明 |
---|---|
-eq | 等しい場合、それは真です |
-ね | 等しくない場合は True |
-gt | それより大きい場合、それは真です |
-げ | |
以上の場合は true -lt | |
未満の場合は真です -ル | 以下の場合は true です |
デモ例:
num1=100 num2=100 if test $[num1] -eq $[num2] then echo '两个数相等!' else echo '两个数不相等!' fi
出力結果:
两个数相等!
文字列テスト
パラメータ | 説明 |
---|---|
= | 等しい場合、それは真です |
!= | 等しくない場合は True |
-z 文字列 | 文字列の長さがゼロの場合は True |
-n 文字列 | 文字列の長さがゼロでない場合は true です |
デモ例:
num1="php" num2="php" if test num1=num2 then echo '两个字符串相等!' else echo '两个字符串不相等!' fi
出力結果:
两个字符串相等!
ファイルテスト
パラメータ | 説明 |
---|---|
-e ファイル名 | ファイルが存在する場合は True |
-r ファイル名 | ファイルが存在し、読み取り可能な場合は True |
-w ファイル名 | ファイルが存在し、書き込み可能な場合は True |
-x ファイル名 | ファイルが存在し、実行可能であれば True |
-s ファイル名 | ファイルが存在し、少なくとも 1 つの文字が含まれている場合は True |
-d ファイル名 | ファイルが存在し、ディレクトリである場合は True |
-f ファイル名 | ファイルが存在し、通常のファイルである場合は True |
-c ファイル名 | ファイルが存在し、キャラクタースペシャルファイルである場合は True |
-b ファイル名 | ファイルが存在し、ブロック特殊ファイルである場合は True です |
デモの例:
cd /bin if test -e ./bash then echo '文件已存在!' else echo '文件不存在!' fi
出力結果:
文件已存在!
さらに、シェルは (!) ではなく (-a) または (-o) も提供します。テスト条件を接続するために 3 つの論理演算子が使用されます。その優先順位は、「!」が最も高く、「-a」が 2 番目、「-o」が最も低くなります。例:
cd /bin if test -e ./notFile -o -e ./bash then echo '有一个文件存在!' else echo '两个文件都不存在' fi
出力結果:
有一个文件存在!