Wie kann ich mehrere Zeilen zu einer Zeile zusammenfügen, mit einem Trennzeichen, in dem sich die Zeichen für neue Zeilen befanden, und ein nachfolgendes Trennzeichen vermeiden und optional leere Zeilen ignorieren?
Beispiel. Stellen Sie sich eine Textdatei foo.txt
mit drei Zeilen vor:
foo
bar
baz
Die gewünschte Ausgabe ist:
foo,bar,baz
Der Befehl, den ich jetzt benutze:
tr '\n' ',' <foo.txt |sed 's/,$//g'
Im Idealfall wäre es ungefähr so:
cat foo.txt |join ,
Was ist:
- der tragbarste, prägnanteste und lesbarste Weg.
- Die präziseste Art, nicht standardmäßige Unix-Tools zu verwenden.
Natürlich könnte ich etwas schreiben oder einfach einen Alias verwenden. Aber ich bin interessiert, die Optionen zu kennen.