5. Dateitypen und wie man mit ihnen umgeht
Eine Datei kann unterschiedliche Daten enthalten - das Spektrum reicht von
Texten über Grafiken, Sounddaten, und Videoclips bis zu komplexen
Datenbanken. Davon abzugrenzen sind Programmdateien, die von Unix oder DOS
ausgeführt werden können. Die Situation wird dadurch kompliziert,
daß für jeden Datentyp noch viele unterschiedliche Formate oder
Codierungen existieren; so kann ein Text zum Beispiel als "plain"-ASCII
(American Standard Code for Information Interchange) oder auch in Formaten von
bestimmten Programmen (z.B. Rich Text Format) abgespeichert sein; für
Grafiken und Sounds gibt es eine Unzahl von verschiedenen Formaten.
Um sich in diesem Djungel einigermaßen zurechtfinden zu können, hat
man sich darauf geeinigt, den Datentypen und -formaten jeweils (mehr oder
weniger) eindeutige Extensions zuzuordnen. Im folgenden sollen die
gängigen Extensions und die passenden Programme, um sich diese Dateien
anzusehen, vorgestellt werden. Es gibt natürlich noch wesentlich mehr
Datenformate - aber einerseits kenne ich sie selbst auch nicht alle (ich
muß es zugeben ;-) und außerdem wäre es auch nicht sinnvoll sie
hier endlos aufzulisten...
Programmdateien:
Unix-Programmdateien zeichnen sich dadurch aus, daß sie keine Extension
haben. Das ist aber keineswegs eindeutig: sie können durchaus auch mal
eine Extension haben, und Dateien ohne Extension sind oft auch Textdateien.
Herausfinden kann man das mit dem ls-Befehl: wie ihr bereits oben gelesen habt,
müssen Unix-Programmdateien das Execute-Recht besitzen - beim "ls
-l"-Befehl muß also bei den Dateirechten irgendwo ein "x" vorkommen.
DOS-Programmdateien dagegen sind stets daran zu erkennen, das sie die Extension
".EXE" oder ".COM" tragen. Außerdem ist der Name vor der Extension nie
länger als 8 Zeichen.
Um Programmdateien auszuführen braucht man (eigentlich logisch) kein
separates Programm, man führt sie einfach auf dem jeweils passenden
Rechner (also Unix oder DOS) aus, indem man ihren Namen eingibt.
Textdateien:
ASCII-Dateien sind weltweit genormt, man kann sie also auf jedem Rechner recht
einfach anzeigen. Auf Unix verwendet man dazu entweder den cat-Befehl, oder
wenn man die Datei seitenweise ansehen will, den more- oder auch less-Befehl.
Auf DOS gibt es den type-Befehl, wenn man es gern seitenweise hat, gibt man
more < Dateiname ein.
- ASCII-Texte tragen oft die Extension ".TXT" oder auch
".DOC", meistens auch garkeine Extension. Oft tragen Textdateien auch Namen,
die einen geradezu zum lesen auffordern ("readme"). Wenn man aus einer
Textdatei mit more nur Datenmüll auf den Bildschirm bekommt, ist es
wahrscheinlich eine Datei im speziellen Format eines Textverarbeitungsprogramms - hier hilft es
nur, das entsprechende Programm aufzutreiben und den Text dort einzuladen. Die
Extension ".DOC" wird zum Beispiel auch von Winword verwendet.
- RTF-Dateien sind Textdateien im "Rich Text Format" - ein genormtes Format,
daß zum Austausch zwischen verschiedenen Textverarbeitungsprogrammen
eingesetzt wird. Sie tragen (praktischerweise) die Extension ".RTF". Anschauen
kann man die Dateien mit den entsprechenden Textverarbeitungsprogrammen (z.B.
Winword). Außerdem kann das Format mit entsprechenden Programmen nach
ASCII oder HTML konvertiert werden (unter Verlust der
Formatierungsinformationen).
- PS-Dateien enthalten Postscript-Text (Extension ".PS"). Dieses Format ist
hauptsächlich zur Ausgabe auf Postscript-Druckern gedacht, wird aber
inzwischen auch für Bildschirmausgaben verwendet. Ansehen kann man diese
Dateien, indem man sie an einen Postscript-fähigen Drucker schickt oder
mit speziellen Programmen auf dem Bildschirm darstellt. Am besten lassen sich
PS-Dateien mit Ghostscript (Programmname: gs) oder Ghostview darstellen - sie
erfordern allerdings ein grafikfähiges (X-Windows)-Terminal. Es gibt auch
die Möglichkeit, die Datei nach ASCII umzuwandeln (Programmname: ps2ascii)
und mit more anzuzeigen - dabei geht allerdings die gesamte
Formatierungsinformation verloren.
- TEX- und DVI-Dateien enthalten Text des Satzprogramms TEX (gesprochen "Tech"),
das vor allem für wissenschaftliche Arbeiten gedacht ist. DVI-Dateien
tragen die Extension ".DVI" und lassen sich nach Postscript (Programmname:
dvips) oder auch ASCII konvertieren.
- HTML-Dateien enthalten Steuertexte für das World-Wide-Web, ein weltweit
vernetztes Multimedia Informationssystem (die Extension HTML steht für
HyperText Markup-Language). Die Online-Version von diesem Text ist zum Beispiel
in HTML verfaßt. HTML wird als ASCII-Datei abgespeichert, sie kann also
wie eine normale Textdatei angezeigt werden; im Text findet man verschiedene
Kommandos, die die Formatierung und die Verweise auf andere Hypertext-Dokumente
regeln. Das "richtige", formatierte Ergebnis schaut man sich am besten mit
einem Web-Browser (z.B. mosaic, lynx, cello) an.
- Manual pages mit Beschreibungen von Unix-Kommandos haben je nach ihrer
inhaltlichen Zuordnung verschiedene Extensions. In PD-Paketen findet man oft die
Endung ".man"; normalerweise tragen die manpages eine Extension, die
folgenden Gruppen enstammt:
1 = Benutzerkommandos
2 = Systemaufrufe
3 = C-Subroutinen
4 = Ausgabegeräte (Devices)
5 = Formate von Systemdateien
6 = Spiele
7 = Vermischtes
8 = Systemverwaltung
n = Neue Manualpages
Grafiken:
Das GIF-Format ist zur Zeit am weitesten verbreitet. Es komprimiert die
Grafiken halbwegs gut, so daß sie nicht unmäßig viel
Speicherplatz verbrauchen. Anschauen kann man die Grafik (natürlich nur
auf einem grafikfähigen Terminal) am besten mit dem xv-Programm. Für
DOS gibt es den sehr guten qpeg-viewer, für Windows nimmt man am besten
lview (übrigens alles Public-Domain-Programme). Diese Programme
können im übrigen sämtliche gängigen Grafikformate laden
(insbesondere xv), so daß ich die restlichen Grafikformate nur
stichwörtlich auflisten werde:
- JPG oder JIF: sehr gute Kompression der Bilder (allerdings mit leichtem Verlust
der Bildqualität)
- TIF: mit oder ohne Kompression
- BMP: Windows-spezifisches Format ohne Kompression
- XBM: X-Windows-spezifisch, ohne Kompression, wird von DOS oder Windows nicht
unterstützt
- und viele andere mehr!
Videoclips:
Mit der zunehmenden Verbreitung von Multimedia im Internet gibt es (gerade im
World-Wide-Web) auch immer mehr Videoclips. Leider ist oft die nötige
Software, um einen Clip abzuspielen nicht vorhanden, oder existiert fuer das
betreffende Betriebssystem überhaupt nicht. Man sollte bei Videoclips
daran denken, daß sie sehr viel Speicherplatz wegnehmen und somit bei
der Übertragung über das Internet eine entsprechende Netzbelastung
verursachen.
- MPG-Dateien enthalten Videoclips die nach dem "MPEG"-Standard codiert wurden
(Motion Picture Expert Group). Diese Clips haben zur Zeit die beste
Qualität, sind allerdings wegen des enormen Speicherverbrauchs recht kurz
(meist ca. 1 Minute). Unter Unix gibt es zum Anschauen den mpeg_play, für
DOS gibt es den dmpeg und für Windows den mpeg-player dmfw von Xing.
MOV-Dateien entsprechen dem "Quicktime"-Standard des Apple-Macintosh. Soweit ich weiß gibt es für Unix zur Zeit keinen MOV-Player - allerdings gibt es einen für Windows (und natürlich für den Macintosh).
- GL-Dateien sind meist kurze Clips von minderer Qualität, die mit grasp oder xgrasp
angeschaut werden können.
- FLI-Dateien entstammen dem Autodesk-Animator und können unter DOS mit
quickfli, unter Windows mit aaplay angesehen werden.
Sound:
Für die Sounddateien gilt das gleiche wie für die Videoclips - sie
verbreiten sich immer mehr, scheinen stets dasjenige Format zu haben, das man
auf dem eigenen Rechner nicht abspielen kann ;-) und verbrauchen eine Menge
Speicher und Netzkapazität.
- WAV-Dateien entsprechen dem Windows-Sound-Standard und können z.B. mit dem
Klangrecorder in der Zubehörgruppe von Windows abgespielt werden
(Soundkarte vorrausgesetzt). Unter Linux gibt es playwav - für andere
Unix-Systeme kenne ich keinen Player für WAV-Dateien - vielleicht gibt es
Konverter zu anderen Formaten.
- VOC-Dateien sind in einem speziellen Format für PC-Soundkarten
gespeichert, abgespielt werden können sie mit vplay. Für Unix sieht's
schlecht aus.
- AU-Dateien sind in einem Format für Sun-Workstations gespeichert. Sie
können auf diesen Workstations (bei eingebautem Lautsprecher -
ausprobieren!) mit dem audiotool abgespielt werden. Für Linux gibt es
auplay.
Archive und Kompressoren:
Archive sind zu einer großen Datei zusammengefaßte Dateisammlungen
(wie in Kapitel 3.4 beschrieben). Archivdateien werden meist noch
zusätzlich komprimiert, um Platz zu sparen. Die Archive sind fast alle
plattformspezifisch - d.h. die Dateien sind meistens mit einem Archivar des
Systems codiert, auf das sie auch gehören (z.B. Unix-Dateien mit tar oder
shar, DOS-Dateien mit pkzip oder arj). Mit Archiven kommt man am ehesten beim
"Absaugen" von Software aus ftp-Servern in Kontakt. Um die Software
benützen zu können muß man sich also zunächst den
passenden Entpacker für das entsprechende System besorgen. Falls
dafür kein Programm aufzutreiben ist (z.B. kein tar für DOS), kann
man das Archiv auch direkt auf dem Unix-Rechner entpacken (dort ist ja ein tar
vorhanden) und entweder unverpackt auf Diskette überspielen
(ungünstig) oder mit einem DOS-üblichen Programm vorher wieder
einpacken. Man sieht also, daß einige der früher DOS- oder
Unix-spezifischen Archivare jetzt auf beiden System verfügbar ist.
Die Unix-Kompressionsprogramme wurden in Kapitel 3.4. vorgestellt. Unter DOS
wird die Kompression meist gleichzeitig vom Archivar vorgenommen.
- TAR-Archive sind unter Unix sehr weit verbreitet und besonders dadurch
praktisch, daß sie die Verzeichnisstruktur mitarchivieren (es gibt
inzwischen auch eine Version für DOS: gnutar). Wie man mit ihnen umgeht,
ist in Kapitel 3.4 beschrieben.
- SHAR-Archive unter Unix sind besonders clever: sie entpacken sich selbst, da
sie ein entsprechendes shellscript enthalten. Man kopiere die Datei (evtl.
vorher dekomprimieren) in ein leeres Verzeichnis und tippe "sh
<Dateiname>", worauf das Archiv seinen Inhalt im aktuellen
Verzeichnis verteilt.
- BAR-Archive sollen unter Unix gesichtet worden sein - persönlich habe ich
allerdings noch nie mit einem zu tun gehabt.
- ZIP-Archive sind DOS-typisch. Sie sind recht weit verbreitet, komprimieren
gleich mit, und können mit dem pkunzip-Programm (teil der PKZIP-Package)
entpackt werden. Man sollte die ZIP-Datei vorher in ein leeres Verzeichnis
kopieren, damit der Inhalt sich nicht mit anderen Dateien vermischt (man hat
sonst später Schwierigkeiten, den Wust auseinanderzusortieren). Unter Unix
ist, wenn man Glück hat, unzip installiert.
- ARJ-Archive sind ebenfalls unter DOS recht weit verbreitet. Sie sind meist
stärker komprimiert (und damit handlicher) als ZIP-Archive. Auspacken kann
man sie mit dem arj, wobei man die Optionen x -y angeben sollte. Unter Unix
gibt es den unarj.
- Desweiteren gibt es (seltener) unter DOS noch Archive mit den Typen .ZOO, .LHA,
.ICE und noch viele andere Exoten, die meist mit gleichnamigen Programmen
entpackt werden können.
- Und außerdem: sowohl ZIP- als auch ARJ-Archive können sich als
selbstentpackendes Archiv mit der Extension ".EXE" präsentieren. Diese
entpackt man einfach durch Aufrufen mit ihrem Dateinamen. Es empfiehlt sich
auf jeden Fall, den Archivinhalt nach dem Auspacken (bei EXE-Archiven
auch vor dem Entpacken) mit einem Virenscanner auf Virenbefall zu prüfen!
Man benützt dafür am besten den scan.exe von McAfee (Shareware), der
jeweils monatlich aktualisiert auf diversen ftp-serven bereitsteht.
- Für DOS-Muffel gibt es unter Windows das Programm winzip, das eine
komfortable Bedienoberfläche für die gängigen DOS-Archivare
bietet.
Programmcode:
Neben den ausführbaren Programmen ("Executables") gibt es noch Dateien die
sogenannten "Quellcode" (Sourcecode) enthalten - unter Unix wird dafür in
den meisten Fällen die Programmiersprache "C" verwendet. Als
Ottonormalverbraucher wird man damit relativ wenig zu tun haben, falls man
nicht in der unangenehmen Lage ist, ein Softwarepaket installieren zu wollen.
- Bei C-Programmen findet man Dateien mit den Extensions ".C" (der eigentliche
Programmcode), ".H" (sog. Headerfiles) und ".O" (Objectfiles). Die .C- und
.H-Dateien sind im lesbaren ASCII-Format gespeichert, so daß man nur noch
vor dem Problem steht, die kryptischen Befehlszeilen zu verstehen. .O-Dateien
enthalten vorkompilierten Programmcode, der eigentlich nur einen
Zwischenschritt bei der Erstellung von Executables darstellt (und nicht lesbar
ist). Außerdem findet man noch "Makefiles", die im Klartext Regeln und
Anweisungen für den C-Compiler enthalten, wie er das Executable aus den
einzelnen Quellcode-Dateien zusammenbauen soll.
- Shellscripts stellen ein Zwischending zwischen Quellcode und Executables dar:
sie enthalten im Klartext (ASCII) Befehle, die von einer Unix-Shell verarbeitet
werden können (ähnlich wie .BAT-Batchdateien unter DOS). Da es unter
Unix eine Vielzahl unterschiedlicher Shells gibt, die oft auch untereinander
inkompatibel sind, muß man aufpassen, daß man die Shellscripts in
der jeweils passenden Shell ausführt. Praktischerweise steht meistens in
der ersten Zeile eine Scripts, für welche Shell es geschrieben wurde - die
Zeile sähe z.B. für die C-Shell (csh) so aus:
#! /usr/bin/csh
Darf's was mehr sein?
Ich bin sicher, daß es noch dutzender anderer Extensions und Dateiformate
gibt, die man hier noch aufzählen könnte; wenn Euch noch etwas
einfällt, das hier unbedingt erscheinen sollte - nur zu! Schickt einfach
eine email mit der passenden Beschreibung an ganslan@uni-muenster.de.