2011-01-24 10 views
3

私はファイルをダウンロードするスクリプトを持っていますが、これらのファイルはダウンロード前に情報がありません。 Linuxの場合は、qx{ 'file ' . $filename }という名前でJPEG画像かどうかを確認してください。しかし、私は現在、プラットフォームに依存しない純粋なPerl形式に書き直そうとしています。私はsystem{ 'curl', $image_website }へのすべての呼び出しをLWP :: UserAgent呼び出しに変えました。ファイルへの呼び出しを何かに置き換える何らかの方法があることを期待していました。Linuxの "file"コマンドのようなPerlコマンドまたはモジュール

答えて

6

File::Type CPANモジュールはあなたを助けることができます - その説明はUnix typeコマンドが行う「魔法を使ってファイルの種類を決定する」です。 [ファイル:: MimeInfo ::マジック](のhttp://検索も

+6

;

my $ft = File::Type->new(); my $type_from_file = $ft->checktype_filename($file); 

別のオプションは、File::LibMagic(ファイル4.xまたはファイル5.xのlibmagicのためのPerlのラッパー)があります。 cpan.org/perldoc?File::MimeInfo::Magic)。 – ephemient

+0

お互いに感謝します。 File :: Typeは動作しますが、File :: MimeInfo :: Magicを調べて、File :: MimeInfoの 'extensions'関数を使用することができます。これは、必要以上のCPANモジュールを必要とせずに行います。 –

+0

それもうまくいく。再度、感謝します。 –

関連する問題