GNU/Linux >> Tutoriales Linux >  >> Linux

Tutorial de comandos de columna de Linux para principiantes (con ejemplos)

A veces, mientras trabaja en la línea de comandos en Linux, es posible que desee mostrar el contenido de un archivo en formato de columnas. Le alegrará saber que hay una utilidad de línea de comandos en Linux que le permite hacer esto. El nombre de la herramienta es columna, y discutiremos los conceptos básicos de este comando usando algunos ejemplos fáciles de entender.

Pero antes de hacerlo, vale la pena mencionar que todos los ejemplos aquí se han probado en una máquina con Ubuntu 18.04 LTS.

Comando de columna de Linux

El comando de columna en Linux le permite listas en columnas. La siguiente es su sintaxis:

column [-entx] [-c columns] [-s sep] [file ...]

Y así es como lo define la página de manual de la herramienta:

     The column utility formats its input into multiple columns.  Rows are
     filled before columns.  Input is taken from file operands, or, by
     default, from the standard input.

Los siguientes son algunos ejemplos de estilo de preguntas y respuestas que le darán una mejor idea de cómo funciona el comando de columna.

P1. ¿Cómo usar el comando de columna?

El uso básico es bastante fácil. Suponga que tiene un archivo llamado 'test.txt' que contiene la siguiente información:

1
2
3
4
5
6
7
8
9
10

Ahora, para columnar el contenido de este archivo, use el comando de columna de la siguiente manera:

column test.txt

Y obtendrás una salida como esta:

1    2    3    4    5    6    7    8    9    10

P2. ¿Cómo columnar una salida delimitada?

Supongamos que un archivo contiene los siguientes contenidos:

No.|Country|Yes/No
01|India|Y
02|US|Y
03|Australia|Y
04|China|N
05|Russia|Y
06|Japan|Y
07|Singapore|Y
08|South Korea|N
09|Finaland|Y
10|Ireland|Y

Ahora, ejecute el comando de columna de la siguiente manera:

column test.txt -t -s "|"

Y aquí está la salida producida:

No.  Country      Yes/No
01   India        Y
02   US           Y
03   Australia    Y
04   China        N
05   Russia       Y
06   Japan        Y
07   Singpaore    Y
08   South Korea  N
09   Finaland     Y
10   Ireland      Y

Para su información, así es como la página del manual de comandos de columna explica las opciones de línea de comando -t y -s:

-s      Specify a set of characters to be used to delimit columns for the
        -t option.

-t      Determine the number of columns the input contains and create a
        table.  Columns are delimited with whitespace, by default, or
        with the characters supplied using the -s option.  Useful for
        pretty-printing displays.

P3. ¿Qué pasa con los casos con múltiples delimitadores?

En el ejemplo anterior, vio que el contenido original contenía la tubería '|' como delimitador. Entonces, el comando de columna usó este delimitador para producir una salida en formato de columna. Pero, ¿y si hubiera dos tuberías en algunas entradas? Por ejemplo, vea la primera línea aquí:

No.||Country||Yes/No
01|India|Y
02|US|Y
03|Australia|Y
04|China|N
05|Russia|Y
06|Japan|Y
07|Singpaore|Y
08|South Korea|N
09|Finland|Y
10|Ireland|Y

De forma predeterminada, el comando de columna fusiona varios delimitadores adyacentes en un solo delimitador. Sin embargo, si lo desea, puede usar la opción de línea de comando -n para deshabilitar ese comportamiento. Entonces, en ese caso, el comando de columna se convertiría en:

column -n test.txt -t -s "|"

P4. ¿Cómo maneja el comando de columna las líneas vacías?

De forma predeterminada, el comando de columna ignora las líneas vacías. Sin embargo, si lo desea, puede suprimir este comportamiento mediante la opción de línea de comando -e.

Por ejemplo, línea de contenido de archivo esto:

No.|Country|Yes/No
01|India|Y
02|US|Y
03|Australia|Y

04|China|N
05|Russia|Y
06|Japan|Y

07|Singapore|Y
08|South Korea|N
09|Finland|Y
10|Ireland|Y

Saldrá como:

No.  Country      Yes/No
01   India        Y
02   US           Y
03   Australia    Y

04   China        N
05   Russia       Y
06   Japan        Y

07   Singapore    Y
08   South Korea  N
09   Finland     Y
10   Ireland      Y

usando el siguiente comando:

column -e test.txt -t -s "|"

Conclusión

Dependiendo del tipo de trabajo que realice en la línea de comandos de Linux, el comando de columna podría serle de gran ayuda. En este tutorial, hemos discutido las opciones mayoritarias que ofrece la herramienta. Para obtener más información, diríjase a su página de manual.


Linux
  1. Linux expand Command Tutorial para principiantes (con ejemplos)

  2. Tutorial de comando de factor Linux para principiantes (con ejemplos)

  3. Tutorial del comando nproc de Linux para principiantes (con ejemplos)

  4. Tutorial de comando de suspensión de Linux para principiantes (con ejemplos)

  5. Tutorial de comando Linux basename para principiantes (con ejemplos)

Tutorial de comando Linux sha1sum para principiantes (con ejemplos)

Tutorial de comandos de apariencia de Linux para principiantes (con ejemplos)

Tutorial del comando lsattr de Linux para principiantes (con ejemplos)

Tutorial de comando colrm de Linux para principiantes (con ejemplos)

Tutorial del comando tload de Linux para principiantes (con ejemplos)

Tutorial de comando Linux tr para principiantes (con ejemplos)