Zum Inhalt springen

Zeilenvorschub

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 7. Februar 2007 um 00:32 Uhr durch PortalBot (Diskussion | Beiträge) (Bot: Expandiere Vorlage gem. Vorlagenhinweis). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Unter Zeilenvorschub (englisch line feed) versteht man im ursprünglichen Sinne das Drehen der Walze bei einer Schreibmaschine. Mit dem Aufkommen der elektronischen Datenverarbeitung und damit der dazugehörigen Drucker und Bildschirme benötigte man ein Steuerzeichen, das sinngemäß genau das Gleiche hervorruft, nämlich das Bewegen in die nächste Zeile.

Dies ist notwendig, um Texte mit Umbrüchen und Absätzen entsprechend ausgeben zu können. Daher wurde in praktisch allen Zeichensätzen ein solches Steuerzeichen vorgesehen. Im ASCII Zeichensatz, dem verbreitetsten und meistgenutzten Zeichensatz weltweit, wurde z.B. das Zeichen hexadezimal 0A bzw. dezimal 10 dafür vorgesehen, im EBCDIC-Code das Zeichen hexadezimal 25 bzw. dezimal 37. Die übliche Abkürzung ist LF.

Zeilenvorschubzeichen unter verschiedenen Betriebssystemen

Betriebssystem Zeichen Regex ASCII hexadezimal
MS-DOS, Windows CR LF \r\n 0D0A
Apple Mac OS bis Version 9 CR \r 0D
alle Unix-Derivate LF \n 0A

Die Darstellung der Zeilenvorschübe ist unter verschiedenen Betriebssystemen nicht einheitlich.

  • Microsoft Windows führte mit MS-DOS die Zeichenkette CR LF als Zeichenvorschub ein, also erst ein Wagenrücklauf und dann der Sprung in die nächste Zeile. Das rührt daher, dass ein simpler Zeilenvorschub im historischen Sinn nur die Walze vorschiebt, den Cursor also in die nächste Zeile befördert. Erst der Wagenrücklauf bringt ihn ganz an den Anfang dieser Zeile.
  • Unix und seine Derivate, wie zum Beispiel Linux, verwenden seit jeher nur das Zeichen LF, also einen einfachen Zeilenvorschub, der den Cursor automatisch an den Anfang der nächsten Zeile befördert.
  • Apples Mac OS verwendete bis Version 9 lediglich das Zeichen CR, welches, wie LF unter Unix, für Zeilenvorschub und Wagenrücklauf sorgte. Seit Mac OS X wird jedoch auch LF verwendet, da dieses vollständig neu entwickelt wurde und nun auf Unix aufsetzt.

Aus diesem Grund ist der Austausch von Textdaten zwischen diesen unterschiedlichen Betriebssystemen erheblich erschwert. Viele Programme, zum Beispiel Browser, akzeptieren daher jedes dieser Steuerzeichen als Zeilenvorschub, auch wenn dies technisch nicht ganz korrekt ist.

Bekannt ist auch das FTP, welches für dieses Problem sogar zwei Übertragungsmodi entwickelt hat: ASCII und binary. Während letzteres die Daten unverändert überträgt, kümmert sich beim ASCII-Übertragungsverfahren der Server darum, dass der Zeilenvorschub den entsprechenden Erfordernissen angepasst wird. Wird also von einem Windows-Client auf einen Unix-Server im ASCII-Format übertragen, werden CR LF automatisch zu LF umgewandelt.

Siehe auch