スポンサーリンク

TEST(1) FreeBSD 一般コマンドマニュアル TEST(1)

名称

test, [ − 条件式評価ユーティリティ

書式

test expression

[ expression ]

解説

test ユーティリティは、式を評価し、結果が真なら 0 (true) を、偽なら 1 (false) を戻り値として返します。引数の式がない場合も 1 (false) を返しま す。

演算子やフラグなどは、一つ一つ独立な引数として test ユーティリティに渡し ます。

式は以下の基本要素から構成されます:

       −b file

file が存在し、それがブロック特殊ファイルであるならば真にな ります。

−c file
file
が存在し、それがキャラクタ特殊ファイルであるならば真に なります。

−d file
file
が存在し、それがディレクトリであるならば真になります。

−e file
file
が存在すれば真になります (ファイルの種類に依りませ ん)。

−f file
file
が存在し、それが通常ファイルであるならば真になります。

−g file
file
が存在し、それに setgid フラグが立っていれば真になりま す。

−h file
file
が存在し、それがシンボリックリンクであるならば真になり ます。この演算子は、本プログラムの以前のバージョンとの互換 性のためにあります。この演算子があることに依存しないように してください。代りに −L を使用してください。

−k file
file
が存在し、それにスティッキビットが立っていれば真になり ます。

−n string
string
の長さが 0 でなければ真になります。

−p file
file
が名前つきパイプ (FIFO) であるならば真になります。

−r file
file
が存在し、それが読み込み可能であれば真になります。

−s file
file
が存在し、そのファイルサイズが 0 より大きければ真にな ります。

−t file_descriptor
ファイル記述子番号が file_descriptor であるファイルがオープ ンされており、これが端末に結びつけられていれば真になりま す。

−u file
file
が存在し、それに setuid フラグが立っていれば真になりま す。

−w file
file
が存在し、書き込み可能であれば真になります。真というこ とは、書き込み可能フラグが立っていることを表すに過ぎませ ん。ファイルが読み込み専用のファイルシステム上にあると、た とえこの判定が真であっても書き込みはできません。

−x file
file
が存在し、実行可能であれば真になります。真ということ は、実行可能フラグが立っていることを表すに過ぎません。 file がディレクトリの場合、真は file が検索可能であることを表し ます。

−z string
string
の長さが 0 であれば真になります。

−L file
file
が存在し、シンボリックリンクの場合に真になります。

−O file
file
が存在し、その所有者と本プロセスの実効ユーザ ID とが マッチする場合に真になります。

−G file
file
が存在し、そのグループと本プロセスの実効グループ ID と がマッチする場合に真になります。

−S file
file
が存在し、ソケットの場合に真になります。

file1 −nt file2
file1
が存在し、 file2 よりも新しい場合に真になります。

file1 −ot file2
file1
が存在し、 file2 よりも古い場合に真になります。

file1 −ef file2
file1
file2 が存在し、これらが同一のファイルを参照する場 合に真になります。

string
string
が空文字列でなければ真になります。

s1 = s2
文字列 s1s2 が同一であれば真になります。

s1 != s2
文字列 s1s2 が同一でなければ真になります。

s1 < s2
文字列 s1 が文字列 s2 に対し、文字のバイナリ順において前に 来る場合に真になります。

s1 > s2
文字列 s1 が文字列 s2 に対し、文字のバイナリ順において後に 来る場合に真になります。

n1 −eq n2
整数 n1n2 が等しければ真になります。

n1 −ne n2
整数 n1n2 が等しくなければ真になります。

n1 −gt n2
整数 n1n2 がより大きければ真になります。

n1 −ge n2
整数 n1n2 より大きいか等しければ真になります。

n1 −lt n2
整数 n1n2 より小さければ真になります。

n1 −le n2
整数 n1n2 より小さいか等しければ真になります。

file がシンボリックリンクの場合、基本要素 −h−L の場合を除き、 test は 参照を手繰りファイルを得て、それに対して式を評価します。

これらの基本要素は以下の演算子と組み合わせることができます:

! expression
expression
が偽ならば真になります。

expression1 −a expression2
expression1
expression2 の両方が真ならば真になります。

expression1 −o expression2
expression1
expression2 のどちらかが真ならば真になりま す。

(expression)
expression
が真ならば真になります。

−a 演算子は −o 演算子より優先されます。

シェルによっては、本ユーティリティと同一の、組み込みの test コマンドを提 供しています。 builtin(1) マニュアルページを参照してください。

文法の曖昧性

test に使用されている文法は本質的に曖昧です。ある程度の一貫性を確保するた め、 IEEE Std 1003.2 (‘‘POSIX.2’’) の D11.2/4.62.4 節で述べられているケー スに関しては、この標準化文書が規定する規則に一貫して従った評価が行われま す。しかしその他のケースでは、コマンドの持つ意味の曖昧さに左右されます。

戻り値

test ユーティリティは次のいずれかの値を返します。

       0

式を評価した結果が真である

1
式を評価した結果が偽であるか、式がない

>1
エラーが発生した

関連項目

builtin(1), expr(1), sh(1), symlink(7)

規格

test ユーティリティは、 IEEE Std 1003.2 (‘‘POSIX.2’’) 仕様の上位互換実装 です。

FreeBSD 10.0 July 3, 2004 FreeBSD 10.0

スポンサーリンク