19.05.2013 Views

Descarga - Material Curricular Libre

Descarga - Material Curricular Libre

Descarga - Material Curricular Libre

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Aquí presentamos algunos ejemplos:<br />

• Para cortar el nombre de usuario y el nombre completo del campo nombre y colocarlo en orden inverso<br />

del archivo /etc/passwd:<br />

$ awk -F: ‘{print $5,$1}’ /etc/passwd<br />

• Para reportar la suma del cuarto campo correspondiente a la edad del archivo de texto estudiantes.txt:<br />

$ awk -F, ‘/Sistema/{ suma = suma + $2 } > END { print “La Suma de todas las edades de los estudiantes de sistemas<br />

es:”, suma }’ estudiantes.txt<br />

Los comandos pueden ser especificados desde la línea de comandos o desde un archivo (usando la opción<br />

-f y el nombre del archivo que contiene los comandos a ejecutar).<br />

Los comandos consisten de un direccionamiento parecido al del editor ed (números de línea y patrones<br />

de caracteres) y llaves especificas de comandos. Hay dos patrones especiales que son (BEGIN y END) ejecutados<br />

antes y después de los bloques principales de comandos respectivamente. Si no especificamos direccionamiento<br />

de líneas, entonces la sentencia será aplicada a todo el archivo.<br />

Note que awk reconoce campos y records. Cuando el símbolo de $ es usado dentro de awk, éste se refiere<br />

al número de un campo dentro de la línea o récord siendo procesado. Nunca lo confunda con las variables<br />

del shell, que son precedidas con con un símbolo igual de $.<br />

En el siguiente ejemplo, contamos el número de veces que cada palabra completa aparece en un archivo<br />

específico de data:<br />

awk 'BEGIN{print "Vamos a Contar Palabras"}<br />

{for (i=1;i

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!