Inicio·Comandos de terminal
Publicidad

Consigue tu bono en un exchange de criptomonedas

Bonos que recibes solo por registrarte. Las condiciones son las que publica cada exchange.

awk

Procesado de texto

Uso

awk '{print $1}' [file]

Divide cada línea en campos y ejecuta un pequeño programa; $0 es la línea entera y $1 el primer campo, y el separador por defecto es cualquier serie de espacios, no uno solo.

Opciones habituales

OpciónSignificado
-FSet the field separator, as in -F,
-vPass a shell value in as an awk variable
-fRead the program from a file
$0The whole line; $1 is the first field, NF the field count

Ejemplos

awk -F, '{print $2}' data.csv

Second column of a comma-separated file.

awk '$3 > 100' access.log

Only the rows whose third field exceeds 100.

awk '{s+=$1} END {print s}' nums.txt

Adds up the first column.

Están hechos para encadenarse con tuberías. Tres comandos unidos suelen ser más cortos que uno que lo haga todo.

Cómo leerlo

  • Los corchetes [ ] marcan una parte que puedes omitir.
  • Los puntos suspensivos … indican que puedes poner varios.
  • Las opciones distinguen mayúsculas: en algunos comandos -r y -R no hacen lo mismo.

Preguntas

Q¿Qué hace awk?

Divide cada línea en campos y ejecuta un pequeño programa; $0 es la línea entera y $1 el primer campo, y el separador por defecto es cualquier serie de espacios, no uno solo.

Q¿Cómo se escribe?

awk '{print $1}' [file] — los corchetes marcan lo que puedes omitir.

Q¿Cuántas opciones vale la pena saber?

Aquí van 4; la lista completa está en man awk. Este comando está en Procesado de texto.

Comandos relacionados

página man: man awk