file 指令無法辨識 perl 模組

file 指令無法辨識 perl 模組

檔案指令 (Debian Jessie) 無法辨識某些 Perl 模組。例如: /usr/share/perl5/XML/SAX.pm (來自 libxml-sax-perl)給出:

$ file /usr/share/perl5/XML/SAX.pm
/usr/share/perl5/XML/SAX.pm: C++ source, ASCII text

該模組開始於:

# $Id$

package XML::SAX;

use strict;
use vars qw($VERSION @ISA @EXPORT_OK);

當我刪除前兩行時,文件將其視為 Perl 模組:

$ file tt
tt: Perl5 module source, ASCII text

儘管如此,其他以註釋開頭的模組,例如/usr/lib/i386-linux-gnu/perl/5.20.2/Encode.pm已被正確識別。

這是一個錯誤嗎?我可以在哪裡找到未編譯的 mime 資料/usr/share/file/magic.mgc

答案1

未編譯的資料(不是 MIME 資料)/usr/share/file/magic.mgc位於Magdir在裡面file(1) 原始碼。 Perl 魔法的具體定義是Magdir/perl。您看到的問題是固定的;該修復程序在file5.23 及更高版本中提供。

相關內容