test ファイルの存在を判定

ページコンテンツ

用途


testにて、ファイルの存在を判定を行い、スクリプトの動作を変更します。
※ファイルが存在するかどうかによって、スクリプトの動作をかえるなどファイル情報を取得する必要が生じる場合はがあります。

構文


test [条件文]

条件文を評価し、真(条件に一致)ならば0,偽(条件に不一致)ならば0以外を返します。

条件式


ファイル形式のテスト

条件式 実行結果
-f ファイルファイルが存在すれば真
-d ディレクトリディレクトリがあれば真
-r ファイルファイルが存在し、読込可能であれば真
-w ファイル ファイルが存在し、書込可能であれば真
-x ファイル ファイルが存在し、実行可能であれば真
-s ファイルサイズが0以上のファイルであれば真
-L ファイルシンボリックリンクであるファイルがあれば真

ファイル特性のテスト

条件式 実行結果
-eファイルファイルがあれば真
ファイル1 -nt ファイル2ファイル1がファイル2より修正時刻が新しければ真
ファイル1 -ot ファイル2 ファイル1がファイル2より修正時刻が古ければ真

数値のテスト

条件式 実行結果
数値1 -eq 数値2数値1と数値2が等しければ真
数値1 -ge 数値2 数値1が数値2より大きい、もしくは等しければ真
数値1 -gt 数値2 数値1が数値2より大きければ真
数値1 -le 数値2 数値1が数値2より小さい、もしくは等しければ真
数値1 -lt 数値2 数値1が数値2より小さければ真
数値1 -ne 数値2 数値1と数値2が等しくなければ真

文字列のテキスト

条件式 実行結果
-n 文字列文字列の長さが0以上であれば真
-z 文字列文字列の長さが0であれば真
文字列1=文字列22つの文字列が等しければ真
文字列1!=文字列2 2つの文字列が等しくなければ真

テキストの論理結合

条件式実行結果
!条件条件式が偽であれば真
条件1 -a 条件2両方の条件式が真であれば真(and)
条件1 -o 条件2 いずれかの条件式が真であれば真(or)

関連記事


最近の記事


Linux以外のIT技術については、下記サイトにアクセスしてください。
気まぐれSE研究所(https://www.se-lab.yokohama/)