man test
名前
test - ファイル形式のチェックや値の比較を行う
書式
test [expr]
test [--help] [--version]
説明
test は条件式 expr を評価した結果によって、 0 (真) または 1 (偽) を終了
ステータスとして返す。
式の各部分はそれぞれ分離された引数でなければならない。式は単項式ある い
は 二項式である。 test はファイルのステータス調査、文字列操作、数値の比
較演算を行うことができる。
ほとんどのシェルには同名の組み込みコマンドがあるので、単に ‘test’ と し
て 実行すると、ここで記述されたものとは異なった機能のものが実行されるだ
ろう。
ファイル形式のテスト
-b file
file が存在し、ブロックスペシャルファイルであれば真。
-c file
file が存在し、キャラクタスペシャルファイルであれば真。
-d file
file が存在し、ディレクトリであれば真。
-f file
file が存在し、通常ファイル (regular file) であれば真。
-h file
-L file
file が存在し、シンボリックリンクであれば真。
-p file
file が存在し、名前付きパイプ (named pipe) であれば真。
-S file
file が存在し、ソケットであれば真。
-t [fd]
fd が端末でオープンされていれば真。 fd が省略された場合のデフ ォ
ルト値は 1 (標準出力)。
ファイルのパーミッションのテスト
-g file
file が存在し、set GID されていれば真。
-k file
file が存在し、 sticky ビットが立っていれば真。
-r file
file が存在し、読み取り可能であれば真。
-u file
file が存在し、 set SUID されていれば真。
-w file
file が存在し、書き込み可能であれば真。
-x file
file が存在し、実行可能であれば真。
-O file
file が存在し、現在の実効ユーザー id による所有であれば真。
-G file
file が存在し、現在の実効グループ id による所有であれば真。
ファイル特性のテスト
ファイル特性のテスト
-e file
file が存在すれば真。
-s file
file が存在し、サイズが 0 より大きければ真。
file1 -nt file2
file1 が file2 より (修正時刻で比較して) 新しければ真。
file1 -ot file2
file1 が file2 より古ければ真。
file1 -ef file2
file1 と file2 のデバイス番号と i-ノード番号が共に等しければ真。
文字列のテスト
string
-n string
string の長さが 0 より大きければ真。
-z string
string の長さが 0 であれば真。
string1 = string2
二つの文字列が等しければ真。
string1 != string2
二つの文字列が等しくなければ真。
数値のテスト
arg1 OP arg2
OP は -eq, -ne, -lt, -le, -gt, -ge のいずれか。これらの代数二 項
演 算子は、それぞれ arg1 が arg2 (に等しい、に等しくない、より小
さい、より小さいか等しい、より大きい、より大きいか等しい) 条件を
満たせば真。 arg1 および arg2 は正の整数、負の整数をとることがで
きる。また -l string という特殊な式を指定することもでき、この 場
合は string の長さとなる。
テストの論理結合
! expr expr が偽であれば真。
expr1 -a expr2
expr1 と expr2 の両方が真であれば真。
expr1 -o expr2
expr1 か expr2 のどちらかが真であれば真。
オプション
GNU test が引数一つだけで起動された場合には、以下のオプションが認識され
る:
--help 標準出力に使用方法のメッセージを出力して正常終了する。
--version
標準出力にバージョン情報を出力して正常終了する。


コメントする