Wie kann ich alle Zeilenumbrüche mit Ausnahme des letzten Zeilenumbruchs durch Leerzeichen ersetzen? Ich kann alle Zeilenumbrüche durch Leerzeichen ersetzen, tr
aber wie kann ich das mit einigen Ausnahmen tun?
Wie kann ich alle Zeilenumbrüche mit Ausnahme des letzten Zeilenumbruchs durch Leerzeichen ersetzen? Ich kann alle Zeilenumbrüche durch Leerzeichen ersetzen, tr
aber wie kann ich das mit einigen Ausnahmen tun?
Antworten:
Neuimplementierung von vonbrands Idee in Perl, vorausgesetzt die Datei ist klein genug:
perl -p00e 's/\n(?!\Z)/ /g' your_file
Das hat bei mir funktioniert.
tr '\n' ' ' < file_with_new_line | sed 's/\ $//g' > file_with_space
tr
Befehl ersetzt alle Zeilenumbrüche durch Leerzeichen und Ihr sed
Befehl entfernt das letzte Leerzeichen. Dies führt zu einer Datei ohne abschließenden Zeilenumbruch und ist daher nicht das, was die Frage verlangt. Übrigens hat g
der sed
Befehl keinen Sinn, int zu verwenden . Da du verwendest $
, kann es nur am Ende passen, das g
ist sinnlos. Sie müssen auch nicht aus dem Raum entkommen, das `` macht auch keinen Unterschied.
-s
und-d
scheinen für diesen Fall wie gemacht zu sein.