Dateiformate
CIP Index Up Left Right

Dateiformate

Wenn man von Dateitypen spricht, sind Unterscheidungen gemeint, die das Betriebssystem macht. In diesem Kapitel ist dagegen von Formaten die Rede, die - unabhängig vom Typ - sich auf die Anordnung des Inhalts einer Datei beziehen, d.h. ein Format ist eine syntaktische Spezifikation.

Beispiel: Möchte man in einer Datei speichern, wie oft man sich schon auf einem bestimmten Rechner eingeloggt hat, so kann man dies im folgenden Format tun: In einer Datei werden für jedes mal Einloggen ein Zeichen "A" mehr abgelegt. Die Zahl der A's soll dann der des Einloggens entsprechen. Ob die Zahl der A's korrekt ist, kann der Rechner nicht prüfen (Semantik), jedoch wenn z.B. ein "B" in der Datei auftaucht, liegt eindeutig ein Formatfehler vor.

Es gibt eine ganze Reihe von Standardformaten, die teils von UNIX oder von zentralen Anwendungsprogrammen verwendet werden. Mit dem Kommando file kann man testen, ob das Format einer bestimmten Datei mit irgendeiner solchen Formatspezifikation übereinstimmt (funktioniert auf HP leider nicht besonders gut, z.B. bei cores gar nicht).

Eine Liste von solchen Formaten erhält man unter System V nur aus /etc/magic, auf Sun per man 5 intro. Die wichtigsten sind:

a.out
Format aller ausführbaren Programmdateien. Hier gilt die Einschränkung, daß das file Kommando meist nur die eigene Architektur erkennt, d.h. das file unter Sun erkennt kein HP-Executable.

dir
Format der Einträge eines Verzeichnisses

crontab
Format eines crontab-Eintrags. Siehe auch Verzögerter Prozeßstart.

hosts.equiv
Format des rhosts Files.

executable script
Ein Shell- oder sonstiges Interpreter-Script, das als ausführbar markiert ist und einen Header #! program hat.

data, english text
Sind keine Formate, sondern immer der Fall, wenn nichts anderes paßt.