|
|
Zeile 61: |
Zeile 61: |
|
| |
|
| = TMP = | | = TMP = |
| == Beschreibung ==
| |
| '''file''' versucht die Art oder den Typ der angegebenen ''Datei'' zu bestimmen.
| |
| * Dazu werden drei Tests durchgeführt: ein Dateisystemtest, ein Kennzahlentest und ein Sprachtest.
| |
| * Der erste erfolgreiche Test führt zur Ausgabe des erkannten Dateityps.
| |
|
| |
| Der erkannte Typ enthält normalerweise eines der Schlüsselwörter `text' für Dateien, die ohne Schwierigkeiten angezeigt werden können, `executable' für Dateien, die ausführbare Programme enthalten und auf dem einen oder anderen Unix-Rechner auch ausgeführt werden können, und `data' für alle anderen Dateien, die normalerweise nicht angezeigt werden können.
| |
|
| |
| Nur allgemein bekannte Dateiformate wie core-Dateien oder tar Archive werden ohne diese Schlüsselwörter benannt.
| |
| * Der Dateisystemtest wird mit Hilfe des stat(2) Systemaufrufs durchgeführt.
| |
| * Hier werden leere Dateien ebenso erkannt wie alle Gerätedateien, Sockets, symbolische Links und andere Spezialdateien.
| |
|
| |
| Der Kennzahlentest kann einige Dateien anhand festgelegter Kennzahlen - sogenannter `magic numbers' - erkennen, die sich in der Nähe des Dateianfangs an einer festgelegten Stelle befinden.
| |
|
| |
| Mithilfe solcher Kennzahlen entscheidet etwa das Betriebssystem, ob eine Datei korrekt ausführbar ist oder nicht.
| |
| * Diese Kennzahlen sind in der Datei /etc/magic abgespeichert.
| |
| * Wenn eine Datei als Text erkannt ist, versucht file noch, die (Programmier-)Sprache zu erkennen, indem es nach bestimmten Schlüsselwörtern sucht.
| |
|
| |
| Auf diese Weise kann beispielsweise C-Quelltext oder die Eingabe für den groff Textprozessor erkannt werden.
| |
|
| |
| <tt>'''file'''</tt> bestimmt den Dateityp
| |
|
| |
| '''file''' [-c ] [-f ''Namendatei''] [-m ''Magiedatei''] ''Datei'' ...
| |
|
| |
| <tt>'''file'''</tt> versucht die Art oder den Typ der angegebenen ''Datei'' zu bestimmen.
| |
| * Dazu werden drei Tests durchgeführt: ein Dateisystemtest, ein Kennzahlentest und ein Sprachtest.
| |
| * Der erste erfolgreiche Test führt zur Ausgabe des erkannten Dateityps.
| |
|
| |
| Der erkannte Typ enthält normalerweise eines der Schlüsselwörter `text' für Dateien, die ohne Schwierigkeiten angezeigt werden können, `executable' für Dateien, die ausführbare Programme enthalten und auf dem einen oder anderen Unix-Rechner auch ausgeführt werden können, und `data' für alle anderen Dateien, die normalerweise nicht angezeigt werden können.
| |
|
| |
| Nur allgemein bekannte Dateiformate wie <tt>core</tt>-Dateien oder <tt>tar</tt> Archive werden ohne diese Schlüsselwörter benannt.
| |
| * Der Dateisystemtest wird mit Hilfe des <tt>stat</tt>(2) Systemaufrufs durchgeführt.
| |
| * Hier werden leere Dateien ebenso erkannt wie alle Gerätedateien, Sockets, symbolische Links und andere Spezialdateien.
| |
|
| |
| Der Kennzahlentest kann einige Dateien anhand festgelegter Kennzahlen - sogenannter `magic numbers' - erkennen, die sich in der Nähe des Dateianfangs an einer festgelegten Stelle befinden.
| |
|
| |
| Mit Hilfe solcher Kennzahlen entscheidet beispielsweise das Betriebssystem, ob eine Datei korrekt ausführbar ist oder nicht.
| |
| * Diese Kennzahlen sind in der Datei /etc/magic abgespeichert.
| |
| * Wenn eine Datei als Text erkannt ist, versucht <tt>file</tt> noch, die (Programmier-)Sprache zu erkennen, indem es nach bestimmten Schlüsselwörtern sucht.
| |
|
| |
| Auf diese Weise kann beispielsweise C-Quelltext oder die Eingabe für den <tt>groff</tt> Textprozessor erkannt werden.
| |
|
| |
|
| [[Kategorie:Linux/Befehl]] | | [[Kategorie:Linux/Befehl]] |
file - erkennt den mime typ einer Datei
topic - Kurzbeschreibung
Beschreibung
Installation
Syntax
file [Option] Filename
file [-c ] [-f Namendatei] [-m Magiedatei] Datei ...
Optionen
-m Magiedatei
|
benutzt die benannte Magiedatei anstelle von /etc/magic für den Kennzahlentest
|
-c
|
gibt den interpretierten Inhalt der Kennzahlendatei für Testzwecke aus
|
-f Namendatei
|
veranlaßt file, die Namen der zu untersuchenden Programme aus der Namendatei zu lesen; in der Namendatei werden die Dateinamen durch Zeilenende getrennt aufgeführt
|
Parameter
Umgebungsvariablen
Exit-Status
Anwendung
$ file file.c
file.c: C program text
$ file program
program: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked
(uses shared libs), stripped
$ file /dev/wd0a
/dev/wd0a: block special (0/0)
$ file -s /dev/hda1
/dev/hda1: Linux/i386 ext2 filesystem
$ file -s /dev/hda5
/dev/hda5: Linux/i386 swap file
$ file data.ppm
data.ppm: Netpbm PPM "rawbits" image data
Fehlerbehebung
Konfiguration
Dateien
Anhang
Siehe auch
Dokumentation
Man-Pages
Info-Pages
Links
Projekt
Weblinks
TMP