Búsqueda de sitios web

Mostrar la salida del comando o el contenido del archivo en formato de columna


¿Está harto de ver resultados de comandos congestionados o contenido de archivos en el terminal? Este breve artículo demostrará cómo mostrar la salida de un comando o el contenido de un archivo en un formato “columnado” mucho más claro.

Podemos usar la utilidad columna para transformar la entrada estándar o el contenido de un archivo en forma tabular de múltiples columnas, para obtener una salida mucho más clara.

Lea también: 12 comandos útiles para filtrar texto para operaciones efectivas con archivos en Linux

Para entenderlo más claramente, hemos creado el siguiente archivo “tecmint-authors.txt” que contiene una lista de los nombres de los 10 autores principales, la cantidad de artículos escritos y la cantidad de comentarios que recibieron sobre el artículo hasta ahora. .

Para demostrar esto, ejecute el comando cat a continuación para ver el archivo tecmint-authors.txt.

cat tecmint-authors.txt
Salida de muestra
pos|author|articles|comments
1|ravisaive|431|9785
2|aaronkili|369|7894
3|avishek|194|2349
4|cezarmatei|172|3256
5|gacanepa|165|2378
6|marintodorov|44|144
7|babin lonston|40|457
8|hannyhelal|30|367
9|gunjit kher|20|156
10|jesseafolabi|12|89

Usando el comando de columna, podemos mostrar un resultado mucho más claro de la siguiente manera, donde -t ayuda a determinar el número de columnas que contiene la entrada y crea una tabla y el -s especifica un carácter delimitador.

cat tecmint-authors.txt  | column -t -s "|"
Salida de muestra
pos  author         articles  comments
1    ravisaive      431       9785
2    aaronkili      369       7894
3    avishek        194       2349
4    cezarmatei     172       3256
5    gacanepa       165       2378
6    marintodorov   44        144
7    babin lonston  40        457
8    hannyhelal     30        367
9    gunjit kher    20        156
10   jesseafolabi   12        89

De forma predeterminada, las filas se completan antes que las columnas, para llenar las columnas antes de llenar las filas use el interruptor -x y para indicar al comando de columna considere las líneas vacías (que se ignoran de manera predeterminada). incluya la bandera -e.

Aquí hay otro ejemplo práctico, ejecute los dos comandos siguientes y vea la diferencia para comprender mejor lo que puede hacer la columna mágica.

mount
mount | column -t
Salida de muestra
sysfs        on  /sys                             type  sysfs            (rw,nosuid,nodev,noexec,relatime)
proc         on  /proc                            type  proc             (rw,nosuid,nodev,noexec,relatime)
udev         on  /dev                             type  devtmpfs         (rw,nosuid,relatime,size=4013172k,nr_inodes=1003293,mode=755)
devpts       on  /dev/pts                         type  devpts           (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs        on  /run                             type  tmpfs            (rw,nosuid,noexec,relatime,size=806904k,mode=755)
/dev/sda10   on  /                                type  ext4             (rw,relatime,errors=remount-ro,data=ordered)
securityfs   on  /sys/kernel/security             type  securityfs       (rw,nosuid,nodev,noexec,relatime)
tmpfs        on  /dev/shm                         type  tmpfs            (rw,nosuid,nodev)
tmpfs        on  /run/lock                        type  tmpfs            (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs        on  /sys/fs/cgroup                   type  tmpfs            (rw,mode=755)
cgroup       on  /sys/fs/cgroup/systemd           type  cgroup           (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/
....

Para guardar la salida bien formateada en un archivo, utilice la redirección de salida como se muestra.

mount | column -t >mount.out

Para obtener más información, consulte la página de manual de columnas:

man column 

Quizás también te interese leer los siguientes artículos relacionados.

  1. Cómo utilizar expresiones regulares y Awk para filtrar texto o cadenas en archivos
  2. Cómo buscar y ordenar archivos según la fecha y hora de modificación en Linux
  3. 11 comandos avanzados 'Grep' de Linux sobre clases de caracteres y expresiones entre corchetes

Si tiene alguna pregunta, utilice el formulario de comentarios a continuación para escribirnos. También puede compartir con nosotros consejos y trucos útiles sobre la línea de comandos en Linux.