質問

誰かが拡張子のないドキュメント(.pdf、.doc、.xls、ppt、.ogg、mp3、pngなど)を私に送信した場合、どのようにファイルタイプを判別できますか? / usr / bin / fileコマンドが常に正しいとは限らないか、Microsoft Office文書があると単純に言っています。ファイル名に拡張子を追加できるように正確に知りたいです。

役に立ちましたか?

解決

/ etc / magicに追加することにより、独自のルールを作成できます

詳細については、

manファイル。これらを常に正しくするのは難しいですが、私は合理的な成功を収めています。

他のヒント

mimetype(1)を試してください。

Perlについては、 File :: MimeInfo をご覧ください。

他のポスターのいくつかは、これまでのところいくつかのことを無視しているようです。

File :: MimeInfo は、「file」で使用されるのと同じMimeInfoデータベースを使用してファイルを識別します。だから、それは別の何かをすることはほとんどありません。

File :: Type は、それ自体に依存しているため、興味深い可能性があります。しかし、これは、「if」ステートメントでいっぱいのコミカルな長いスクリプトにつながります。しかし、これはその性質上、「ファイル」がすでにカバーしていないものをカバーする可能性は低いです。

未知のファイルタイプでできる最善の方法は、16進エディタでそれらをクラックするか、「文字列」を介して実行して、何かを認識するかどうかを確認することです。ファイルの識別方法を管理している場合は、 File :: Type を使用してください。私の知る限り、少なくとも簡単に拡張できるからです。

Perlモジュールを使用できます: File :: Type

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top