Dinu Gherman wrote:
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
Fuer die Eindeutigkeit der "magic numbers" (und der anderen von file(1) eingesetzten Methoden) gibt es schon aus Prinzip keine Garantie, weder auf einer einzelnen Plattform, noch beim Vergleich zwischen verschiedenen Plattformen. File(1) operiert nur nach heuristischen Krieterien, und ermittelt die Dateitypen nicht abschliessend, sondern liefert einen "educated guess". Als Grundlage dieses Ratespiels dient die "magic"-Datei. Wenn das Programm ein "FORMAT.COM" also nicht als DOS-Executable erkennt, dann liegt das wahrscheinlich daran, dass dieser Dateityp in der zu Rate gezogenen "magic" nicht eingetragen ist. Es wuerde mich ueberraschen, wenn sich das nicht leicht beheben liesse. Und als letztes noch eine Frage interessehalbers. Nachdem das obige Beispiel ja demonstriert, dass file() auch unter OS X zur Verfuegung steht, und die OS X Executable als moeglicher Problemfall erwaehnt wurden: Kannst du mal ein Beispiel posten, wie die beiden Dinge dort zusammenspielen (oder auch nicht)? -schorsch -- Georg Mischler -- simulations developer -- schorsch at schorsch.com +schorsch.com+ -- lighting design tools -- http://www.schorsch.com/ _______________________________________________ Python-de maillist - Python-de@starship.python.net http://starship.python.net/mailman/listinfo/python-de