名前 | 形式 | 機能説明 | オプション | 使用例 | 環境 | ファイル | 属性 | 関連項目 | 使用上の留意点
file コマンドは、filename 引数で指定された個々のファイルを検査し、その内容を確かめます。内容が ASCII テキストの場合、file は先頭の 512 バイトをチェックしてその言語を推定します。
file コマンドは /etc/magic ファイルを使用して、ある種のマジック番号すなわち タイプを示す数値定数または文字列定数を含むファイルを識別します。
マジック番号ファイルを検査し、フォーマットエラーの有無を調べます。 処理効率が良くないので、この検査を実施することはほとんどありません。 本オプション指定時には、ファイルタイプのチェックは行いません。
タイプを識別するファイル名のリストを ffile で示すファイルから得ます。
ファイルがシンボリックリンクの場合、 リンク自体ではなくリンクが参照しているファイルを検査します。
代替マジック番号ファイル名として、 mfile が示すファイルを使用します。
あるユーザーのディレクトリ中の全ファイルに対して file コマンドを実行した例を以下に示します。
example% pwd /usr/blort/misc |
example% /usr/ucb/file * code: mc68020 demand paged executable code.c: c program text counts: ascii text doc: roff,nroff, or eqn input text empty.file: empty libz: archive random library memos: directory project: symboliclink to /usr/project script: executable shell script titles: ascii text s5.stuff: cpio archive example% |
file の実行時、 LC_CTYPE、 LANG、 LC_default の 3 つの環境変数が文字分類を制御します。 file の開始時、 LC_CTYPE の次に LANG、その次に LC_default、の順序で変数の値がチェックされます。正当な値を持つ変数が見つかれば、 その値が用いられ残りの変数の値は無視されます。したがって、たとえば LANG に新たな値を設定しても、現在 LC_CTYPE が示す文字分類規則が有効であれば、規則は変更されません。いずれの変数の値も正当でないと、シェル文字分類規則のデフォルトとして POSIX.1 C ロケールが使用されます。
/etc/magic
次の属性については attributes(5) のマニュアルページを参照してください。
属性タイプ | 属性値 |
使用条件 | SUNWscpu |
file はしばしば認識を誤ることがあります。特にコマンドファイルを C プログラムファイルと認識してしまうことがよくあります。
また file は Pascal や LISP を認識することができません。
名前 | 形式 | 機能説明 | オプション | 使用例 | 環境 | ファイル | 属性 | 関連項目 | 使用上の留意点