Aprende a utilizar el comando awk en Linux y macOS para manipular datos de forma eficiente
Si bien no soy fanático de la programación, me encanta trabajar desde la línea de comandos tanto como sea posible y tengo un gran respeto por los programadores y lo que pueden hacer. A medida que trabajo en mejorar mis habilidades de Linux, encuentro mucha interacción entre Linux y macOS en la Terminal debido a su base UNIX compartida, y recientemente comencé a utilizar algunos comandos de Linux más avanzados (para mí) en mis scripts.
Uno de los comandos que simplemente me sorprendió es awk. ¡Permíteme decirte que awk es increíble! Básicamente, es como un comando filtro que interpreta los datos que se le envían. Awk escanea el archivo/datos y divide las partes de una línea en campos. Esto permite al usuario transformar los datos según desee, generar informes con un formato específico, buscar patrones o realizar operaciones de programación basadas en dichos datos. También funciona extremadamente bien con variables para segmentar puntos de datos específicos para recuperarlos más tarde.
Este artículo está lejos de ser un enfoque avanzado de awk, pero si estás buscando ampliar tus conocimientos en la Terminal de Linux/macOS y deseas implementar esta excelente utilidad en tus scripts para aprovechar al máximo los datos, este artículo te ayudará a comenzar en el camino hacia la iluminación awk.
Imprimir todos los datos de un archivo
Una de las formas más sencillas de utilizar awk es hacer que escanee un archivo y muestre o imprima (Figura A) el contenido en pantalla utilizando la siguiente sintaxis:
awk {print} nombre_archivo.ext
Figura A
Las 10 lenguajes de programación imprescindibles para desarrolladores este añoBuscar líneas que coincidan con un patrón específico
Supongamos que deseas agrupar todas las líneas que coincidan con un patrón especificado. La siguiente sintaxis mostraría solo las líneas que cumplen los criterios de aquellas con el título de trabajo "Doctor" (Figura B):
awk '/Doctor/ {print}' nombre_archivo.ext
Figura B
Especificar datos particulares según el campo
El comando awk incluye variables incorporadas, comenzando con $0 (que imprime el archivo completo) y continuando con $1, $2, y así sucesivamente. Esta variable se asigna a una sección/columna y hará referencia a todos los elementos en las filas que pertenezcan a esa cabecera. En nuestro ejemplo a continuación (Figura C), las variables $4 y $6 se traducirían en las cabeceras "email_address" y "location_id", por lo que la sintaxis para mostrar solo la información que coincida con esos dos patrones sería:
awk '{print $4,$6}' nombre_archivo.ext
Figura C
Cómo enviar la salida de un comando a un archivo en LinuxEn mi experiencia, he encontrado que awk es extremadamente versátil y útil más allá de las palabras, pero no sin sus momentos de confusión. Como con cualquier cosa, no puedo recomendar lo suficiente experimentar con el comando, leer las páginas del manual y definitivamente probarlo con tus scripts en un entorno que no sea de producción hasta que tengas una comprensión más sólida de lo que esta utilidad es capaz de hacer.
En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Desarrollo, allí encontraras muchos artículos similares a Aprende a utilizar el comando awk en Linux y macOS para manipular datos de forma eficiente , tenemos lo ultimo en tecnología 2023.
Artículos Relacionados