[Python-de] Re: [Python-de] Re: [Python-de] Äquivalent zu `file`
Dinu Gherman
gherman at darwin.in-berlin.de
Fri Oct 25 11:29:44 EDT 2002
Heiner Faber raesonierte wie folgt:
>> Ich behaupte mal frech, so etwas gibt's nicht. Wie sollte man das auch
>> plattformunabhaengig bestimmen? Und auf welcher Plattform willst Du es
>
> Ähm, mit Verlaub: Das ist Blödsinn, da "file" auch bei Dateien anderer
> Plattformen funktioniert. Wie das mit Python funktioniert, weiß ich
> aber leider (noch) nicht, da ich gerade erst mit Python angefangen
> habe. Zur Not könnte man ja auch "file" selbst (unter Win32 z.B. den
> cygwin-Port) benutzen.
Der Verlaub sei gestattet, falls ich ein letztes Wort dazu noch sagen
darf? Erstens, habe ich zuvor schon ueber die Moeglichkeit berichtet,
Meta-Information ueber eine Datei innerhalb von *anderen* Dateien zu
platzieren. Zweitens, gibt es meines Wissens nach keinen "MS-offiziel-
len" file-Befehl auf Windosen, sondern nur GNU- Cygwin- oder mks-arti-
ge Aequivalente. Drittens ist nicht gesagt, dass "magic numbers" ueber
Plattformgrenzen hinweg eindeutig sein muessen. Viertens habe ich ein-
mal folgende (gekuerzte) Liste eines Win98-CD-Verzeichnisses mit dem
file-Befehl unter OS X zusammengestellt, wo als "data" so einiges auf-
taucht, was man als Windose-User vermutlich genauer aufteilen moechte.
dinu% file /Volumes/WIN98\ SE/win98/*
BASE4.CAB: data
EXTRACT.EXE: MS-DOS executable (EXE)
FORMAT.COM: data
OEMSETUP.BIN: data
scandisk.pif: data
setup.txt: data
setup0.wav: Microsoft RIFF, WAVE audio data, 8 bit, stereo 22050
Hz
smartdrv.exe: MS-DOS executable (EXE), OS/2 or Windows
suback.bin: PC bitmap data, Windows 3.x format, 505 x 450 x 8
tour: directory
w98setup.bin: MS-DOS executable (EXE), OS/2 or Windows
...
Wenn man sich all dieser Einschraenkungen bewusst ist, kann man na-
tuerlich trotzdem einen file-Befehl auf allen Plattformen implemen-
tieren, auch in Vanille-Python. Wenn man die Einschraenkungen ir-
gendwie aufhebt, koennte das ein nettes Modul werden...
Dinu
--
Dinu C. Gherman
......................................................................
"Honest disagreement is often a good sign of progress." (Gandhi)
More information about the Python-de
mailing list