移動先: 概要 戻り値 フラグ MEL の例

概要

filetest [-L] [-b] [-c] [-d] [-e] [-f] [-g] [-h] [-k] [-l] [-p] [-r] [-s] [-u] [-w] [-x] [-z] string

filetest は「元に戻す」が不可能「照会」が不可能「編集」が不可能です。

これはファイルへのアクセスとタイプのチェック用コマンドです。 指定した単一のフラグに基づいてテストを評価し、値が true のときは 1 を、 それ以外は 0 を返します。 filetest は、テストが無効の場合も 0 を返します。 パーミッションがテストされる場合は、プロセスの有効なユーザ ID が使用されます。

単項の否定演算子 "!" が、filetest の前に付くこともあります。

注記:

自分自身が所有するファイルをテストする場合に(-r、-w または-x のテスト)、テストされたパーミッションに所有者のビット セットが付いていないときは、ファイルにそのパーミッションのグループやほかのビットが設定されている場合でも、ゼロ以外の(false)終了ステータスが返されます。 スーパーユーザの場合は、正しい終了ステータスが設定されます。

複数のテストが指定されている場合、最初のテストだけが実行され、他のフラグは無視されます。

filetest は UNIX シェルの /sbin/test にある "test" コマンドに似ていますが、同じものではないので注意してください。許可されるのは 1 つのテストだけで、すべてのオプションがサポートされているわけではありません。また、返されるコードも逆になります。filetest では true のとき 1 を返しますが、shell では 0 です。

戻り値

intテスト結果

フラグ

L, b, c, d, e, f, g, h, k, l, p, r, s, u, w, x, z
ロング ネーム(ショート ネーム) 引数型 プロパティ
-r(-r) create
ファイルが存在し、読み取り可能な場合は true です。
-l(-l) create
ファイルが存在し、シンボリック リンクの場合は true です。
-w(-w) create
ファイルが存在し、書き込み可能な場合は true です。
-x(-x) create
ファイルが存在し、実行可能な場合は true です。
-f(-f) create
ファイルが存在し、通常ファイルの場合は true です。
-d(-d) create
ファイルが存在し、ディレクトリの場合は true です。
-h(-h) create
ファイルが存在し、シンボリック リンクの場合は true です。
-c(-c) create
ファイルが存在し、キャラクタの特殊ファイルの場合は true です。
-b(-b) create
ファイルが存在し、ブロックの特殊ファイルの場合は true です。
-p(-p) create
ファイルが存在し、名前付きパイプ(fifo)の場合は true です。
-u(-u) create
ファイルが存在し、その set-user-ID ビットが設定されている場合は true です。
-g(-g) create
ファイルが存在し、その set-group-ID ビットが設定されている場合は true です。
-k(-k) create
ファイルが存在し、そのスティッキー ビットが設定されている場合は true です。
-s(-s) create
ファイルが存在し、サイズが 0 を超える場合は true です。
-L(-L) create
ファイルが存在し、シンボリック リンクの場合は true です。
-e(-e) create
ファイル(またはディレクトリ)が存在する場合は true
-z(-z) create
ファイルが Unix ドメイン ソケット ファイルの場合は true(Windows ではサポートされていません)

: コマンドの作成モードで使用可能なフラグ : コマンドの編集モードで使用可能なフラグ
: コマンドの照会モードで使用可能なフラグ : 1 つのコマンドで複数回使用可能なフラグ

MEL の例

// Test whether the temp directory exists
//
string $tmpDir = `internalVar -userTmpDir`;
filetest -d $tmpDir;
// Result: 1 //

// The following will fail because the temp dir is not a regular file
//
filetest -f $tmpDir;
// Result: 0 //