¿Existe una utilidad o script simple para columnatear la salida de uno de mis scripts? Tengo datos de alguna forma:
A aldkhasdfljhaf
B klajsdfhalsdfh
C salkjsdjkladdag
D lseuiorlhisnflkc
E sdjklfhnslkdfhn
F kjhnakjshddnaskjdh
pero si esto se convierte en dos largos, escriba los datos en la siguiente forma (donde todavía están ordenados verticalmente):
A aldkhasdfljhaf D lseuiorlhisnflkc
B klajsdfhalsdfh E sdjklfhnslkdfhn
C salkjsdjkladdag F kjhnakjshddnaskjdh
Al leer la página de manual, no creo que esto sea algo column
apropiado, pero no estoy seguro. Es bastante fácil dividir en la forma:
A B
C D
E F
imprimiendo solo \n
cada segunda línea (lo que hace mi script actual). ¿Algunas ideas? ¡Gracias!
shell-script
text-processing
awk
columns
Hemmer
fuente
fuente
-t)... But for yours to work reliably you probably need
--columnas`.Para columnatear la salida,
pr
convierte archivos de texto para imprimir:p.ej
fuente
Puede dividir el archivo en dos (con el mismo número de líneas o el primer archivo con una línea más) y luego hacer esto:
Si la longitud de las líneas es demasiado diferente, puede ser necesario usar printf para adaptar las longitudes rellenando con espacios.
fuente
... | paste - -
cuando "divide la salida larga" ...Puedes usar simplemente
columns
:NOTA: el
columns
comando es parte delautogen
paquete en mi sistema Fedora 14.Referencias
fuente
columns: command not found
. autogen ?autogen
. Acabo de revisar mi sistema Fedora 14. Lo mencionaré en la respuesta también.