Zeilenumbrüche entfernen
Die Zeilenumbrüche in einer Ausgabe oder in einer Datei können Sie mit dem Befehl tr oder sed entfernen oder durch ein anderes Zeichen ersetzen. Der folgende Befehl mit tr liest die angegebene Datei ein, entfernt alle Zeilenumbrüche und gibt den modifizierten Inhalt auf der Standardausgabe aus.
[georg@centos5 ~]$ tr -d "\n" < dateiname
Sollen die Zeilenumbrüche zum Beispiel durch Leerzeichen ersetzt werden, ändern Sie den Befehl wie folgt ab.
[georg@centos5 ~]$ tr "\n" " " < dateiname
Anstelle einer Datei kann auch die Ausgabe eines anderen Befehls die Daten für tr liefern.
[georg@centos5 ~]$ cat /etc/passwd | cut -d: -f1 | tr "\n" " "
root bin daemon adm lp [...]
root bin daemon adm lp [...]
Da Sie mit tr den Zeilenumbruch nur entfernen oder durch maximal ein Zeichen ersetzten könne, benötigen Sie sed wenn Sie die Zeilenumbrüche durch mehr als ein Zeichen ersetzen wollen.
Der folgende Befehl löscht wie der erste Befehl nur die Zeilenumbrüche aus dem Datenstrom einer Datei.
[georg@centos5 ~]$ sed ':a;N;$!ba;s/\n//g' < dateiname
Alternativ zum zweiten Befehl können Sie auch wie folgt sed einsetzen.
[georg@centos5 ~]$ sed ':a;N;$!ba;s/\n/ /g' < dateiname
Wie bereits angesprochen, kann sed den Zeilenumbruch auch durch mehrere Zeichen ersetzen (hier zum Beispiel durch vier Leerzeichen).
[georg@centos5 ~]$ sed ':a;N;$!ba;s/\n/ /g' < dateiname
Auch sed kann direkt die Ausgabe eines anderen Befehl modifizieren.
[georg@centos5 ~]$ cat /etc/passwd | cut -d: -f1 | sed ':a;N;$!ba;s/\n/ /g'
root bin daemon adm lp [...]
root bin daemon adm lp [...]
Dieser Eintrag wurde am 08.09.2009 erstellt.
Direkter Link zu dieser Seite: http://www.gtkdb.de/index_7_754.html
[ Zur Startseite ] [ Zur Kategorie ]
© 2004-2021 by Georg Kainzbauer