File (UNIX)
SUSでは、以下のオプションの実装が義務付けられている。
-M file - 位置依存テストを含む特別にフォーマットされたファイルを指定する。デフォルトの位置依存テストと状況依存テストは実行されない。
-m file - -Mと同様だが、デフォルトのテストを後で実施する。
-d - 指定されたファイルに対してデフォルトの位置依存およびコンテキスト依存テストを実行する。-Mや-mが指定されていない場合のデフォルトの動作である。
-h - 既存のファイルまたはディレクトリを指すシンボリックリンクを逆参照しない。
-L - 既存のファイルまたはディレクトリを指すシンボリックリンクを逆参照する。
-i - 詳細なファイル種別の識別を行わず、存在しない、ブロックデバイスファイル、キャラクターデバイスファイル、ディレクトリ、名前付きパイプ、ソケット、シンボリックリンク、通常のファイルのいずれかとして分類する。LinuxとBSDではこのオプションの動作が異なり、認識されたファイル形式のMIMEタイプで表示する。
オペレーティングシステムによっては、-s 'special files'、-k 'keep-going'、-r 'raw'などのオプションが追加されている(使用法は#実行例を参照)。
このコマンドは、ファイルの実際の内容ではなく、ファイルの内容が「どのように見えるか」のみを示す。本来のファイル種別とは異なるマジックナンバーを紛れ込ませることで、fileプログラムは簡単に騙すことができる。よって、fileコマンドは特定の状況以外ではセキュリティツールとして使用できない。