HowtoForgeに5月15日(米国時間)に掲載された記事「Linux test Command Tutorial for Beginners (with Examples)」が、testコマンドの使い方を紹介した。testコマンド(または「[」)は文字列や数字の比較、ファイルの判断などに使われることが多いコマンド。シェルスクリプトなどでよく使われている。

紹介されているtestコマンドの主な使い方は次のとおり。

文字列比較: 等しい

test 文字列 = 文字列

文字列比較: 等しくない

test 文字列 != 文字列

数字比較: 等しい

test 数字 -eq 数字

数字比較: ≧

test 数字 -ge 数字

数字比較: >

test 数字 -gt 数字

数字比較: ≦

test 数字 -le 数字

数字比較: <

test 数字 -lt 数字

数字比較: 等しくない

test 数字 -ne 数字

ファイル比較: パスが存在し、かつ、ディレクトリ

test -d パス

ファイル比較: パスが存在し、かつ、ブロックスペシャルファイル

test -b パス

ファイル比較: パスが存在し、かつ、キャラクタスペシャルファイル

test -c パス

ファイル比較: パスが存在

test -e パス

ファイル比較: パスが存在し、かつ、通常ファイル

test -f パス

ファイル比較: パスが存在し、かつ、Set-Group-ID

test -g パス

ファイル比較: パスが存在し、かつ、このプロセスの実効グループIDが設定されている

test -G パス

ファイル比較: パスが存在し、かつ、シンボリックリンク

test -h パス

ファイル比較: パスが存在し、かつ、スティッキービットセット

test -k パス

ファイル比較: パスが存在し、かつ、シンボリックリンク

test -L パス

ファイル比較: パスが存在し、かつ、このプロセスの実効ユーザIDが設定されている

test -O パス

ファイル比較: パスが存在し、かつ、名前付きパイプ

test -p パス

ファイル比較: パスが存在し、かつ、読み込み許可あり

test -r パス
  • testコマンド実行例

    testコマンド実行例

testコマンドはシェルスクリプトでif構文を記述する時によく使われるコマンド。testコマンドは「[」という名前でもコマンドが用意されており、if [ 条件 ] といった書き方ができるようになっている。このコマンドは使われることが多く、シェルスクリプトを読む場合は比較条件の意味を知っておく必要がある。