条件式(test)
test 条件式
または
[ 条件式 ]
条件式 | 内容 |
---|---|
\( E1 \) | 条件E1が真なら真 |
! E1 | 条件E1が偽なら真 |
E1 -a E2 | 条件E1と条件E2 両方が成立するなら真 (and) |
E1 -o E2 | 条件E1と条件E2 どちらかが成立するなら真 (or) |
文字列比較 | |
S1 | 文字列S1の長さが0でないなら真 -n S1 でも同じ |
-z S1 | 文字列S1の長さが0なら真 |
S1 = S2 | 文字列S1とS2が一致するなら真 |
S1 != S2 | 文字列S1とS2が不一致なら真 |
S1 \< S2 | 文字列をASCII順で比較し、S1が前ならば真 ※エスケープ(\\)しないとリダイレクションになってしまう |
S1 \> S2 | 文字列をASCII順で比較し、S1が後ならば真 ※エスケープ(\\)しないとリダイレクションになってしまう |
数値比較 | |
N1 -eq N2 | 整数N1とN2が等しければ真(equal) |
N1 -ne N2 | 整数N1とN2が等しくなければ真(not equal) |
N1 -gt N2 | 整数N1がN2より大きければ真(greater than) |
N1 -ge N2 | 整数N1がN2より大きいか等しければ真(greater than or equal) |
N1 -lt N2 | 整数N1がN2より小さければ真(less than) |
N1 -le N2 | 整数N1がN2より小さいか等しければ真(less than or equal) |
ファイル関連 | |
-e FILE | ファイルFILEが存在するなら真 |
-s FILE | ファイルFILEが存在しサイズが0でないなら真 |
-f FILE | ファイルFILEが存在し(普通の)ファイルならば真 (存在してもディレクトリなら偽) |
-d FILE | ファイルFILEが存在しディレクトリなら真 |
-h FILE | ファイルFILEが存在しシンボリックリンクなら真 -L でも同義 |
-r FILE | ファイルFILEが存在し読み込み可能なら真 ファイルがリンクならば本体の属性に従う |
-w FILE | ファイルFILEが存在し書き込み可能なら真 ファイルがリンクならば本体の属性に従う |
-x FILE | ファイルFILEが存在し実行可能なら真 ファイルがリンクならば本体の属性に従う |
-k FILE | ファイルFILEが存在しstikky bitが立っているなら真 2011.03.03 要確認 |
-O FILE | ファイルFILEが存在し、実行者がファイルのオーナーであれば真 |
-G FILE | ファイルFILEが存在し、実行者のグループがファイルのグループと一致すれば真 |
FILE1 -ef FILE2 | ファイルFILE1とファイルFILE2が同じデバイスでinodeが一緒なら真 (物理的に同じファイルか同じものをさすリンクであれば真) |
FILE1 -nt FILE2 | ファイルFILE1がファイルFILE2より新しければ真(newer than) |
FILE1 -ot FILE2 | ファイルFILE1がファイルFILE2より古ければ真(older than) |