So beheben Sie Zeilenumbrüche in Textdateien mit Dos2Unix und Unix2Dos
Haben Sie jemals eine auf einem Linux-System erstellte Textdatei an jemanden gesendet und sich darüber beschwert, dass sie unter MacOS oder Windows falsch aussah? Dies kann daran liegen, dass diese Systeme Zeilenenden unterschiedlich behandeln. Glücklicherweise lässt sich dies mit einigen Dienstprogrammen leicht beheben: Dos2Unix und Unix2Dos.
Was ist mit Linienenden los?
Ein Unterschied zwischen Windows und Linux, der den Austausch von Dateien erschweren könnte, ist die Art und Weise, wie die Zeilenenden gezählt werden. Dies geht auf die Zeit zurück, als Computer Fernschreibmaschinen für die Ein- und Ausgabe verwendeten, bei denen es sich effektiv um automatische Schreibmaschinen handelte.
Eine neue Zeile, auch Zeilenvorschub genannt, rückt das Papier um eine Zeile vor, und der Wagenrücklauf bewegt sich an den Zeilenanfang. Befehlszeilenschnittstellen, die dieser Konvention zur Interpretation von Zeilenumbrüchen entsprechen.
Windows erbte die MS-DOS-Konvention, eine neue Zeile und einen Wagenrücklauf als eine Zeile zu zählen, während Linux wiederum die Unix-Tradition fortführte, nur Zeilenumbrüche als neue Zeilen zu zählen.
In den meisten Fällen sind Texteditoren intelligent genug, um auf verschiedenen Systemen erstellte Dateien zu erkennen und die Anzeige entsprechend anzupassen. Es kann jedoch gelegentlich zu Problemen kommen. Möglicherweise versuchen Sie, ein Skript auszuführen, und der Interpreter gibt möglicherweise einen Fehler aus, da erwartet wird, dass die Zeilen anders enden.
Verwenden von Dos2Unix und Unix2Dos
Glücklicherweise gibt es einige Dienstprogramme, mit denen Sie Zeilenenden in Dateien zwischen Formaten konvertieren können. Sie heißen Dos2Unix und Unix2Dos .
Obwohl diese Dienstprogramme in vielen Linux-Installationen üblich sind, können Sie sie mit dem Standardpaket-Manager herunterladen, wenn sie nicht auf Ihrem System installiert sind.
Verwenden Sie dos2unix, um eine auf einem Windows-System erstellte Datei nach Linux zu konvertieren :
dos2unix file
… wobei file der Name der Datei ist, die Sie konvertieren möchten. Dieses Programm konvertiert die Datei von DOS-Zeilenumbrüchen in vorhandene Unix-Zeilen, wie der Name schon sagt. Wenn Sie eine Kopie der Datei konvertieren möchten, verwenden Sie die Option -n :
dos2unix -n file1 file2
… wobei Datei1 und Datei2 die Namen der Originaldatei und der Ausgabedatei sind . Der Befehl unix2dos funktioniert genauso und verwendet dieselben Argumente.
Eine alternative Option ist die Verwendung eines Texteditors unter Linux oder Windows zum Konvertieren von Dateien, da diese auch das Verhalten am Zeilenende erkennen und ändern können.
Jetzt sehen Ihre Textdateien auf jedem System richtig aus
Mit diesem Dienstprogrammpaar können Sie sicherstellen, dass jede Textdatei unter Windows oder Linux funktioniert. Das Beheben von Zeilenumbrüchen ist jetzt mit dos2unix und unix2dos einfacher als je zuvor.
In der realen Welt müssen Linux- und Windows-Benutzer häufig Dateien gemeinsam nutzen. Glücklicherweise ist dies heutzutage sehr einfach.