Una regla (rule) contiene un patrón y una acción, y cualquiera de las dos puede ser omitida. El propósito de la acción es decirle a awk qué tiene que hacer una vez que se encuentra el patrón en un registro de entrada. Por lo que el programa completo parecería algo como esto:
[patrón] [{ acción }]
[patrón] [{ acción }]
...
function nombre_función (argumentos) { ... }
...
Una acción consiste en una o más sentencias awk, encerradas entre llaves (`{' y `}'). Cada sentencia especifica una cosa que se tiene que hacer. Las sentencias son separadas por caracteres de nueva línea o puntos y comas (si hay más de una sentencia en una misma línea)
Las llaves alrededor de una acción deben ser usadas incluso si la acción contiene una sola sentencia, o si no contiene ninguna sentencia. Sin embargo, si omites la acción por completo, omite también las llaves. (La omisión de la acción es equivalente a `{ print $0 }' ).
Aquí están los tipos de sentencias soportadas en awk:
- Expresiones, las cuales pueden llamar a funciones o asignar valores a variables. La ejecución de este tipo de sentencias simplemente calcula el valor de la expresión y después lo ignora. Esto es útil cuando la expresión tiene efectos laterales.
Sentencias de control, las cuales especifican el flujo de control del programa awk. El lenguaje awk te da construcciones similares a las del Lenguaje C (if, for, while, etc.) y otras pocas especiales.
Sentencias compuestas, las cuales consisten en una o más sentencias encerradas entre llaves. Una sentencia compuesta se usa para poner varias sentencias juntas en el cuerpo de una sentencia if, while, do o for .
Control de la entrada, usando la función getline, y la sentencia next.
Sentencias de Salida, print y printf. (Ver la sección 4. Imprimiendo la salida).
Sentencias de borrado, para eliminar elementos de un array.
0 Comentarios