$ awk 'length > 72' {HOW TO PRINT THE LINEs IN PCS?} msg
es decir, quiero que se agregue \n
después de 72 caracteres y continúe, por lo que inicialmente es posible que deba eliminar todos los mensajes individuales \n
y agregarlos. Puede ser más fácil ser más fácil con otra herramienta, pero intentemos awk.
[Actualizar]
Williamson proporcionó la respuesta correcta pero se necesitó ayuda para leerla. Divido el problema en partes con ejemplos más simples, a continuación.
¿Por qué el siguiente código impreso
\t
en ambos casosgsub
debería sustituir las cosas? x es un archivo ficticio, algunos 0 impares al final.Al atacar la línea
line = $0 \n more = getline \n gsub("\t"," ")
en la respuesta de Williamson ,line
aparentemente obtiene un stdout completo mientras semore
obtiene el valor emergente$0
, ¿verdad?
Código de la parte 1
$ gawk '{ hallo="tjena\t tjena2"; gsub("\t"," "); }; END {print hallo; gsub("\t", ""); hallo=hallo gsub("\t",""); print hallo }' x
tjena tjena2
tjena tjena20