10

I'm looking for file linux command analog made in Python. It should provide information about file type as described in man file. Minimal feature set I'm looking for is to determine if file is raw or text (human-readable) one. Wrapper library will be good suggestion. I know, I can run file as subprocess and grab it's output to determine file type. But my program is supposed to parse thousands of files and I'm afraid of very long execution time in this case.

Vladimir Ignatev
  • 2,054
  • 1
  • 20
  • 34
  • http://stackoverflow.com/questions/10937350/how-to-check-type-of-files-without-extensions-in-python I thinks it is dup for this one – Vladimir Ignatev Feb 01 '14 at 15:18

1 Answers1

2

you need to check the "magic" byte of the file, and I was about to tell you about:

when it occured to me that this question should already have been answered on SO, and it has.

N.B.: I'm not listing pymagic as the other post does, as it did not get any update since 0.1 which looks quite old (even the source website is down).

for OSX:

brew install libmagic
pip install python-magic
python
>>> magic.from_file('test.py')
'Python script, ASCII text executable'
Community
  • 1
  • 1
zmo
  • 24,463
  • 4
  • 54
  • 90