Debe introducir al menos 3 caracteres en el buscador.
Inicio / Wikis / Tutoriales / Nociones de programación en awk - Sentencias condicionales y bucles

Nociones de programación en awk - Sentencias condicionales y bucles

 ***-- (2 opiniones)
Creative Commons Tutorial de Antonio Castro Snurmacher (Madrid 01/01/2000). - 27 de Octubre de 2005
Temas Relacionados: Linux
10. Sentencias condicionales y bucles
'awk' es un lenguaje muy completo y no podía faltar las sentencias de ejecución condicional y de ejecución en bucle.

Algunos de los conceptos que vamos a comentar ya los hemos visto cuando hablamos de la programación en bash y no vamos a explicar con demasiado detalle cada tipo de sentencia. La sintaxis que usa awk no se parece a la sintaxis que ya hemos visto para bash. Se parece más a la sintaxis del lenguaje C. De todas formas los conceptos ya nos resultan familiares y usaremos algunos ejemplos para ilustrarlos.

Empezaremos describiendo la sintaxis de cada tipo de sentencia. Denominaremos acción a una sentencia simple o a una sentencia compuesta de la forma '{ sentencia1 ; sentencia2 ; ... }'

Sentencia condicional 'if'
if ( expresión_lógica ) accion1 [ else accion2 ]

Sentencia condicional con los operadores '?' y ':'
expresion_lógica ? accion1 : accion2

Bucle 'while'
while ( expresión_lógica ) accion

Bucle 'do' 'while'
do accion while ( expresión_lógica )

Bucle 'for'
for ( inicializar_contador ; comprobar_contador ; modificar_contador ) accion

Dentro de los bucles podemos usar break para forzar la salida de un bucle o continue para saltar a la siguiente iteración.

Veremos de momento tan solo un ejemplo para la sentencia condicional 'if'.

Edite el siguiente fichero que llamaremos 'contabil4.awk'

|| BEGIN { FS="\|" ; } /[0-9][0-9]\-[0-9][0-9]\-[0-9][0-9][0-9][0-9]\|/ { if ( $3 >= 0) { printf ("%3d, %s, %s, %s\n", NR, $1, $2, $3); } } ||


Vamos a ejecutar este ejemplo y vamos a ver su salida

|| $ awk -f contabil4.awk < contabil.dat 3, 01-01-1999, - , 96 7, 27-01-2000, INGRESO , 141200 11, 06-03-2000, INGRESO , 101300 14, 07-04-2000, INGRESO , 134000 17, 09-05-2000, INGRESO , 95000 21, 07-06-2000, INGRESO , 130000 25, 10-07-2000, INGRESO , 99000 28, 10-08-2000, INGRESO , 122355 30, 10-09-2000, INGRESO , 129000 34, 10-10-2000, INGRESO , 112000 ||
Autor y licencia de 'Nociones de programación en awk - Sentencias condicionales y bucles'
Antonio Castro Snurmacher (Madrid 01/01/2000). Extraído de: http://www.mononeurona.org/index.php?idp=462

Creative Commons License
Esta obra está bajo una licencia de Creative Commons.
Este trabajo está licenciado bajo la Creative Commons License. 1999-2005 © :: MonoNeurona.org ::
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.

Wikis relacionados con 'Nociones de programación en awk - Sentencias condicionales y bucles'

Desde el comienzo, desde aquel primer hombre, se encuentra en nosotros la necesidad de inserción... Más »
PHP es un lenguaje de programación diseñado específicamente para aplicaciones Web; las características más destacables... Más »
PHP es un lenguaje de programación diseñado específicamente para aplicaciones Web; las características más destacables... Más »
Un sistema informático utiliza ordenadores para almacenar datos, procesarlos y ponerlos a disposición de quien... Más »
Los sistemas cluster hace años que fueron diseñados, la computación paralela y distribuida no es... Más »
¿Estás seguro de que deseas eliminar este capítulo?