Uso básico del comando awk (Linux)
El comando awk es un método muy potente que permite procesar o analizar archivos de texto que están organizados por líneas (filas) y columnas. El formato básico del comando awk es el siguiente:
awk 'condición {acción}' archivo-entrada > archivo-salida
Mostrar el contenido de un archivo
awk '{ print }' /etc/passwd
Mostrar el valor de un campo
Indicamos el carácter separador (en este caso ":") y la posición del campo que queremos obtener (en este caso es el primero):
awk -F':' '{ print $1 }' /etc/passwd
También podemos ordenar la salida:
awk -F':' '{ print $1 }' /etc/passwd | sort
Mostrar todas las líneas con más de 80 caracteres
awk 'length($0) > 80' /etc/passwd
Se pueden utilizar los operadores == != < > <= >=
Mostrar las líneas que contengan alguna palabra de las indicadas
awk '/maria|juan|antonio/' /etc/passwd
Mostrar tus comandos más utilizados:
history | awk '{print $2}' | sort | uniq -c | sort -rn | head
Mostrar la primera línea del archivo
awk "NR==1{print;exit}" /etc/passwd
Podemos hacernos una idea de que las posibilidades que ofrece awk son infinitas, a la hora de trabajar con archivos de texto. Espero que haya servido para comprenderlo y como guía básica de uso.
Fuentes
- http://www.cyberciti.biz/faq/bash-scripting-using-awk/
- http://www.linuxfocus.org/English/September1999/article103.html
- http://how-to.linuxcareer.com/learning-linux-commands-awk
- http://linux.about.com/od/Bash_Scripting_Solutions/a/How-To-Write-Ask-Commands-And-Scripts.htm
Tweet
Sea el primero en comentar
Publicar un comentario