Tubería de salida a xargs
concatenará cada línea de salida en una sola línea con espacios:
grep pattern file | xargs
O cualquier comando, por ejemplo. ls | xargs
. El límite predeterminado de xargs
la salida es ~ 4096 caracteres, pero se puede aumentar con, por ejemplo. xargs -s 8192
.
grep xargs
Usa tr '\n' ' '
para traducir todos los caracteres de nueva línea a espacios:
$ grep pattern file | tr '\n' ' '
Nota:grep
lee archivos, cat
concatena archivos. No cat file | grep
!
Editar:
tr
solo puede manejar traducciones de un solo carácter. Podrías usar awk
para cambiar el separador de registro de salida como:
$ grep pattern file | awk '{print}' ORS='" '
Esto transformaría:
one
two
three
a:
one" two" three"