Bienvenido a Linux Party
Inicio | Foros | Envía Tu Historia | Tu Cuenta | Tienda | Topics | Descargas | Hemeroteca | Juegos | Blogs/Opinión | Faq | Top
Manual Awk mediante ejemplos, Parte 1
Enviado el Viernes, 13 febrero a las 00:00:00
Tópico: Programación
ProgramaciónAwk es un lenguaje muy bonito con un nombre muy extraño. En este primer artículo de una serie de tres, Daniel Robbins le mostrará rápidamente como obtener sus habilidades de programación awk. Según avanza la serie, temas más avanzados se cubrirán, culminando con una avanzada del mundo real awk, con una aplicación de demostración.

En esta serie de artículos, voy a convertirle en un codificador awk competente. Voy a admitirlo, awk no tiene un nombre muy bonito o especialmente "hip" y la versión GNU de awk, llamada gawk, suena francamente rara. Los que no están familiarizados con el idioma puede oír "awk" y pensar en un lío de código anticuado que sólo el más brillante gurú de UNIX al borde de la locura lo usaría (lo que le causó a yelp repetidamente "kill -9!" Como corre para máquina de café).

Claro, awk no tiene un gran nombre. Pero es un gran lenguaje. Awk está orientada hacia el procesamiento de textos y de generación de informes, sin embargo, ofrece muchas características bien diseñadas que permiten la programación seria. Y, a diferencia de otros lenguajes, la sintaxis de awk es familiar, y toma prestados algunos de los mejores partes de lenguajes como C, python y bash (aunque, técnicamente, awk fue creado ante python y bash). Awk es uno de los lenguajes que, una vez adquirida, se convertirá en una parte clave de su arsenal estratégico de codificación.

Los nombre de ficheros y todo lo que esté entre / y / se le ha añadido un espacio, téngalo en cuenta.

El primer awk

 Vamos a seguir adelante y empezar a jugar con awk para ver cómo funciona. En la línea de comandos, escriba el siguiente comando:
$ awk '{ print }' / etc / passwd 

Debería ver el contenido de su archivo / etc / passwd comparecer ante sus ojos. Ahora, para una explicación de lo que hace awk. Cuando especifica el archivo / etc / passwd como nuestro fichero de entrada. Se evaluó el comando de impresión para cada línea en / etc / passwd. Toda la salida se envía a stdout, y obtendrá un resultado idéntico que si hace cat / etc / passwd. Ahora, (para una explicación de la impresión) (bloque de código. En awk, las llaves se utilizan para agrupar los bloques de código en conjunto, similar a C. Dentro de nuestro bloque de código, tenemos un solo comando de impresión. En awk, cuando un comando de impresión aparece por sí mismo, todo el contenido de la línea actual se imprimen.

 Aquí hay otro ejemplo awk que hace exactamente lo mismo:

$ awk '{ print $0 }' / etc / passwd 
¡Atención entre $ y 0, no debe haber espacio!

En awk, la variable $0 representa la totalidad de la línea actual, de modo que imprimir $0 hace exactamente lo mismo. Si lo desea, puede crear un programa awk en el que la salida de datos sea totalmente ajena a los datos de entrada. He aquí un ejemplo:

$ awk '{ print "" }' / etc / passwd 
Cada vez que pase el "" a la cadena de comando de impresión, imprime una línea en blanco. Si prueba este script, usted encontrará que awk produce una línea en blanco para cada línea en su archivo / etc / passwd. Una vez más, esto se debe a que awk ejecuta el script de cada línea en el archivo de entrada. He aquí otro ejemplo:

$ awk '{ print "hiya" }' / etc / passwd 

Mútiples campos

Awk es muy bueno en cuanto al manejo de texto que está dividido en varios campos lógicos, y te permite referenciar cada individuo dentro de su ámbito awk script. El siguiente script muestra una lista de todas las cuentas de usuario en el sistema:

$ awk -F":" '{ print $1 }'  /etc / passwd 
Anteriormente, cuando llamamos a awk, usamos la opción -F para especificar ":" como el separador de campo. Cuando los procesos de impresión awk $1 no encuentre un ":", imprimirá el primer campo que aparece en cada línea en el archivo de entrada. He aquí otro ejemplo:

$ awk -F":" '{ print $1 $3 }' / etc / passwd 
El resto del artículo, ya que lo principal se ha explicado, aquí.




del.icio.us Guardar.
Manual Awk mediante ejemplos, Parte 1

Comparte este artículo...
| More


Noticias relacionadas...
·Conviertete en Desarrollador con Android App Inventor.
·Más que un tutorial para hacer Makefiles, mas allá de la compilación.
·Ruby on Rails, ¿Estás preparado?
·¿Merece la pena portar videojuegos a Linux? Los dev's de Osmos dicen “Sí”
·¿Por qué el programador no es la estrella?
·EDB, Excepcional buen Ensamblador y Debugger para Linux y en entorno gráfico.
·Depurador / Debugger para HTML y XHTML con - xhtmldbg - Para Windows y Linux
·Un navegador para Linux en 2 Kb: milagro del minimalismo
·Por qué los ordenadores se cuelgan más a menudo que tú
·KDevelop 4.0 con plugins para PHP
·Si programas HTML, Zen Coding cambiará tu vida
·Tutorial de jQuery, rápido.
·Nokia lanza el SDK de Qt para el Desarrollo Móvil
·¿Cuántas horas a la semana puede programar?
·Algo para (casi) todos los programadores.
 
Partners Gold.

Visual Hosting



Login
Nickname

Contraseña

Código de Seguridad:
Código de Seguridad
Teclea Código de Seguridad

¿Todavía no tienes una cuenta? Puedes crearte una. Como usuario registrado tendrás ventajas como seleccionar la apariencia de la página, configurar los comentarios y enviar los comentarios con tu nombre.

Enlaces Relacionados
· Más Acerca de Programación
· Noticias de adminweb


Noticia más leída sobre Programación:
Programar y depurar en un IDE para PHP, plugin phpeclipse, xdebug y Remote debug




Votos del Artículo
Puntuación Promedio: 0
votos: 0

Por favor tómate un segundo y vota por este artículo:

Excelente
Muy Bueno
Bueno
Regular
Malo


Opciones

 Versión Imprimible Versión Imprimible


"Partners Gold" | Entrar/Crear Cuenta | 0 Comentarios
Los comentarios son propiedad de quien los envió. No somos responsables por su contenido.
LinuxParty: Noticias de Linux, software libre y tecnología.
Todos los logos y marcas son propiedad de sus respectivos dueños.
Los comentarios son propiedad de sus posters
Licencia Creative Commons

Puedes incluir nuestras noticias incluyendo nuestros ficheros: backend.php o ultramode.txt


Página Generada en: 0.10 Segundos
Todos los logos y marcas corresponden a sus respectivos dueños, los comentarios son propiedad de quienes los enviaron
Inicio | Foros | Contacto | Publicidad | Enviar Historia | Tu Cuenta | Docs | Tu tienda.