¿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 kjhnakjshddnaskjdhpero 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 kjhnakjshddnaskjdhAl leer la página de manual, no creo que esto sea algo columnapropiado, pero no estoy seguro. Es bastante fácil dividir en la forma:
A B 
C D 
E Fimprimiendo solo \ncada 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,
prconvierte 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
columnscomando es parte delautogenpaquete 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.