2013-05-05 63 views
1

有没有一种方法可以从文件管理器(例如PCuntFu中的lubuntu或任何其他类似nautilus)的bash或python文件描述中提取,因为当我使用命令“find”或python-magic pkg或filemagic pkg时,我不在文件管理器中获得如此精确的结果? (例如,当文件包含gif头文件和其下的php代码时,只有文件管理器将该文件识别为PHP脚本,而其他文件为gif图像)使用文件管理器模块检测文件中的文件类型检测文件?

+0

我知道python-magic和filemagic使用libmagic进行检测。 TrID也给我错误的结果。 – Neo 2013-05-05 10:14:19

回答

0

使用linux file命令。我假设文件管理器也是这样做的(但我不是100%确定的)。

例子:

file test.php 
# output: test.php: PHP script, ASCII text 

file test.gif 
# output: test.gif: GIF image data, version 89a, 32 x 32 

file /bin/ls 
# output: /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0x37cdd635587f519989044055623abff939002027, stripped 
+0

我几乎可以肯定,它不是使用find,couse我在鹦鹉螺和PCManFM中试过,并且它们都显示正确。查找命令不能正确显示某些文件 – Neo 2013-05-06 08:50:26

+0

可能。你能给个例子吗? (文件类型:所需的输出)? – hek2mgl 2013-05-06 08:56:05

+0

ofc ... http://pastebin.com/mvBjwD03 这是一个带有gif头文件的php脚本。期望的输出应该是php脚本 – Neo 2013-05-06 10:58:29

1

发现mimetypes是不错的选择。鹦鹉螺使用它的数据库在/ usr/share/mime /,python-magic和filemagic中使用libmagic,find使用别的我猜。