Piping output a xargs
concatenerà ogni riga di output in una singola riga con spazi:
grep pattern file | xargs
O qualsiasi comando, ad es. ls | xargs
. Il limite predefinito di xargs
l'output è di ~ 4096 caratteri, ma può essere aumentato ad es. xargs -s 8192
.
grep xargs
Usa tr '\n' ' '
per tradurre tutti i caratteri di nuova riga in spazi:
$ grep pattern file | tr '\n' ' '
Nota:grep
legge file, cat
concatena i file. Non cat file | grep
!
Modifica:
tr
può gestire solo traduzioni di un singolo carattere. Potresti usare awk
per modificare il separatore di record di output come:
$ grep pattern file | awk '{print}' ORS='" '
Questo trasformerebbe:
one
two
three
a:
one" two" three"