Table of Contents
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Dateinamen
Eine der wesentlichen Dienste eines Betriebssystems wie Linux besteht darin, Daten auf dauerhaften Speichermedien wie Festplatten oder USB-Sticks speichern und später wiederfinden zu können. Um das für Menschen erträglich zu gestalten, werden zusammengehörende Daten normalerweise zu Dateien
zusammengefasst, die auf dem Speichermedium unter einem Namen gespeichert werden.
Hinweis
Auch wenn Ihnen das trivial vorkommen mag: Selbstverständlich ist das nicht. Betriebssysteme in früheren Zeiten machten es mitunter nötig, dass man Gräuel wie die passenden Spurnummern auf Platten kennen musste, wenn man seine Daten wieder finden wollte.
Erlaubte Zeichen
Bevor wir Ihnen erklären können, wie Sie mit Dateien umgehen, müssen wir Ihnen also erklären, wie Linux Dateien benennt.
In Linux-Dateinamen sind grundsätzlich alle Zeichen zugelassen, die der Computer darstellen kann (und noch ein paar mehr). Da einige dieser Zeichen aber eine besondere Bedeutung haben, raten wir von deren Verwendung in Dateinamen aber ab. Komplett verboten innerhalb von Dateinamen sind nur zwei Zeichen, der Schrägstrich und das Nullbyte (das Zeichen mit dem ASCII-Wert 0). Andere Zeichen wie Leerzeichen, Umlaute oder Dollarzeichen können verwendet werden, müssen dann aber auf der Kommandozeile meist durch einen Rückstrich oder Anführungszeichen maskiert werden, um Fehlinterpretationen durch die Shell zu vermeiden.
Achtung: Groß- und Kleinschreibung
Eine Stolperfalle für Umsteiger ist, dass Linux in Dateinamen zwischen Groß- und Kleinschreibung unterscheidet. Im Gegensatz zu Windows, wo Groß- und Kleinbuchstaben in Dateinamen zwar dargestellt, aber identisch behandelt werden, interpretiert Linux x- files und X- Files tatsächlich als zwei verschiedene Dateinamen.
Dateinamen dürfen unter Linux ziemlich lang sein – eine feste allgemeinverbindliche Grenze gibt es nicht, da das Maximum vom Dateisystem abhängt, also der Methode, wie genau die Bytes auf der Platte arrangiert sind (davon gibt es unter Linux mehrere). Eine typische Obergrenze sind aber 255 Zeichen – und da so ein Name auf einem normalen Textterminal gut drei Zeilen einnehmen würde, sollte das Ihren Stil nicht übermäßig einschränken.
Endungen
Eine weitere Abweichung zu DOS- bzw. Windows-Rechnern besteht darin, Endungen dass bei Linux Dateien nicht durch entsprechende Endungen charakterisiert werden müssen. Der Punkt ist in einem Dateinamen also ein ganz gewöhnliches Zeichen. Ein Text kann daher als blabla.txt
abgespeichert werden, aber einfach blabla
wäre grundsätzlich ebenso zulässig. Was nicht heißt, dass Sie keine Dateiendungen benutzen sollten – immerhin erleichtern solche Kennzeichnungen die Identifizierung des Dateiinhaltes.
Hinweis
Manche Programme bestehen darauf, dass ihre Eingabedateien bestimmte Endungen haben. Der C-Übersetzer gcc
zum Beispiel betrachtet Dateien mit Namen, die auf .c
enden, als C-Quelltext, solche mit Namen auf .s
als Assemblerquelltext und solche mit Namen auf .o
als vorübersetzte Objektdateien.
Sonderzeichen
Umlaute und andere Sonderzeichen können Sie in Dateinamen grundsätzlich ungeniert verwenden. Sollen aber Dateien gleichermaßen auf anderen Systemen benutzt werden, ist es besser, auf Sonderzeichen in Dateinamen zu verzichten, da nicht garantiert ist, dass sie auf anderen Systemen als dieselben Zeichen erscheinen.
Ortseinstellung
Was mit Sonderzeichen passiert, hängt auch von der Ortseinstellung ab, da es keinen allgemein üblichen Standard dafür gibt, Zeichen darzustellen, die den Zeichenvorrat des ASCII (128 Zeichen, die im wesentlichen die englische Sprache, Ziffern und die gängigsten Sonderzeichen abdecken) überschreiten. In weitem Gebrauch sind zum Beispiel die Zeichentabellen ISO 8859-1
und ISO 8859-15
(vulgo ISO-Latin-1
und ISO-Latin-9
... fragen Sie nicht) sowie ISO 10646
, gerne salopp und nicht ganz korrekt als Unicode
bezeichnet und in der Regel als UTF-8
codiert. Dateinamen mit Sonderzeichen, die Sie anlegen, während Zeichentabelle X aktiv ist, können völlig anders aussehen, wenn Sie sich das Verzeichnis gemäß Zeichentabelle Y anschauen. Das ganze Thema ist nichts, worüber man beim Essen nachdenken möchte.
convmv
Sollten Sie jemals in die Verlegenheit kommen, einen Berg Dateien vor sich zu haben, deren Namen allesamt gemäß einer verkehrten Zeichentabelle codiert sind, kann Ihnen vielleicht das Programm convmv
helfen, das Dateinamen zwischen verschiedenen Zeichentabellen konvertieren kann. (Sie werden es vermutlich selber installieren müssen, da es sich normalerweise nicht im Standardumfang gängiger Distributionen befindet.) Allerdings sollten Sie sich damit erst befassen, wenn Sie den Rest dieses Kapitels durchgearbeitet haben, denn wir haben Ihnen noch nicht einmal das reguläre mv
erklärt ...
Portable Dateinamen
Ohne Bedenken lassen sich alle Zeichen aus
ABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz
0123456789+-._
in Dateinamen benutzen. Allerdings sollten Sie die folgenden Tipps berücksichtigen:
-
Um den Datenaustausch mit älteren Unix-Systemen zu ermöglichen, sollte die Länge eines Dateinamens gegebenenfalls maximal 14 Zeichen betragen.
-
Dateinamen sollten stets mit einem der genannten Buchstaben oder einer Ziffer beginnen, die vier anderen Zeichen sind nur innerhalb eines Dateinamens problemlos verwendbar.
Diese Konventionen lassen sich am leichtesten mit ein paar Beispielen verstehen. Zulässige Dateinamen wären etwa:
X-files
bla.txt.bak
17.Juni
7_of_9
Schwierigkeiten wären dagegen möglich (wenn nicht gar wahrscheinlich oder sogar sicher) mit:
-20°C Beginnt mit » - «, Sonderzeichen
.profile Wird versteckt
3/4-Takt Enthält verbotenes Zeichen
Müll Enthält Umlaut
Versteckte Dateien
Als weitere Besonderheit werden Dateinamen, die mit einem Punkt (.
) anfangen, an einigen Stellen (etwa beim Auflisten von Verzeichnisinhalten) übersprungen – Dateien mit solchen Namen gelten als »versteckt«. Diese Eigenschaft verwendet man unter anderem gerne für Dateien, die Voreinstellungen für Programme enthalten und die in Dateinamenslisten nicht von wichtigeren Dateien
ablenken sollen.
Hinweis
Für DOS- und Windows-Experten: Diese Systeme erlauben »versteckte« Dateien über ein unabhängig vom Namen zu setzendes »Dateiattribut«. Unter Linux bzw. Unix gibt es so etwas nicht.
Das Wiki zu den Fächern BSA und AIS. Home