Weiterleitung der Ausgabe an xargs verkettet jede Ausgabezeile zu einer einzelnen Zeile mit Leerzeichen:
grep pattern file | xargs
Oder irgendein Befehl, z. ls | xargs . Das Standardlimit von xargs Die Ausgabe beträgt ~4096 Zeichen, kann aber mit zB erhöht werden. xargs -s 8192 .
grep xargs
Verwenden Sie tr '\n' ' ' um alle Newline-Zeichen in Leerzeichen zu übersetzen:
$ grep pattern file | tr '\n' ' '
Hinweis:grep liest Dateien, cat verkettet Dateien. Nicht cat file | grep !
Bearbeiten:
tr kann nur einzelne Zeichenübersetzungen verarbeiten. Sie könnten awk verwenden um das Ausgabedatensatztrennzeichen zu ändern, wie:
$ grep pattern file | awk '{print}' ORS='" '
Dies würde transformieren:
one
two
three
zu:
one" two" three"