Python模拟Linux“文件”命令

时间:2014-02-01 14:40:31

标签: python linux file

我正在寻找用Python制作的file linux命令模拟器。它应该提供有关文件类型的信息,如man file中所述。我正在寻找的最小特征集是确定文件是原始文件还是文本(人类可读)文件。包装库将是一个很好的建议。 我知道,我可以运行file作为子进程并抓住它的输出来确定文件类型。但我的程序应该解析成千上万的文件,在这种情况下我害怕很长的执行时间。

1 个答案:

答案 0 :(得分:1)

您需要检查文件的"magic" byte,我即将告诉您:

当我发现这个问题应该已经在SO上回答了it has

注意:我没有像其他帖子那样列出pymagic,因为它0.1看起来很旧(即使源网站已经关闭)也没有得到任何更新。

for OSX:

brew install libmagic
pip install python-magic
python
>>> magic.from_file('test.py')
'Python script, ASCII text executable'