Your SlideShare is downloading. ×
Awk
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Awk

1,215

Published on

Awk

Awk

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,215
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
14
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. AWK ALFERD A HO, PETER W EINBERGER Y BRIAN K ERNIGHAN
  • 2. QUE ES AWK
    • AWK es un lenguaje de programación diseñado para procesar datos basados en texto, ya sean ficheros o flujos de datos.
    • fue una de las primeras herramientas en aparecer en Unix y ganó popularidad como una manera de añadir funcionalidad a las tuberías de Unix. Los comandos de AWK son las declaraciones sustituidas por acción , pueden incluir llamadas a funciones, asignación de variables, cálculos, o cualquier combinación de estas. AWK contiene soporte propio para muchas funciones; muchas otras son provistas por las distintas versiones de AWK. Incluso algunas versiones soportan la inclusión de librerías dinámicamente enlazadas, que pueden proveer aún más funciones.
  • 3. LINEAS DE COMANDOS
    • Awk –F: ‘$3~/Administración/ {print $0}’ datos
    • Como efecto de la orden, awk anterior, se recorre todas las líneas del archivo de datos buscando aquellas que cumpla la condición:
    • $3~/administración/: condición cierta si el tercer campo ($3) contiene (~) el patrón /Administración/, es decir, si contiene los caracteres Administración.
    • Awk –F”: “ ‘{print $1 “ “ $3}’ datos
    • Awk –F”: “ ‘{print “nombre: “ $1 “ titulacion: “ $3 “ edad: “ $2} ‘ datos
  • 4. SEPARADORES DE CAMPO
    • Uno de los aspectos mas útiles en relación al awk es que a diferencia del "sed", awk puede dividir las líneas en campos a través de un separador de campo indicado en el script o en la línea de comandos. Si no se indica ninguno se tomara como separador de campo un espacio o tabulador. Usando la opción -F de la línea de comandos o la variable FS desde un programa hecho en awk se puede especificar un nuevo separador de campo.
    • cat /etc/passwd | awk -F : '{print $5}'
    • cat /etc/passwd | awk -F : '{print $5,$6}'
  • 5. VARIABLES
    • existe la variable NR que llevara la cuenta de los registros que mostremos, Por ejemplo supongamos que necesitamos obtener un listado largo de un directorio, pero solo queremos ver los permisos, el nombre del archivo y el número de registro que a pasado por el awk.
    • - ls -l | awk '{ print NR" "$1" "$9}'
    • ¿que ocurre si no sabemos la posición del último campo o esta varia? Para esto esta la variable NF que lleva la cuenta de la cantidad de campos de cada registro. Por ello en lugar de la anterior forma podriamos poner:
    • - ls -l | awk '{ print NR" "$1" "$NF}'

×