Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| awk [2023/04/12 14:48] – [Patrones] peron | awk [2026/04/21 16:05] (actual) – editor externo 127.0.0.1 | ||
|---|---|---|---|
| Línea 7: | Línea 7: | ||
| Una segunda categoría es su uso como **transformador de datos**, convirtiendo datos de la forma producida por un programa en la esperada por otro distinto. Los ejemplos más simples consisten en simplemente seleccionar campos, y tal vez reorganizarlos. | Una segunda categoría es su uso como **transformador de datos**, convirtiendo datos de la forma producida por un programa en la esperada por otro distinto. Los ejemplos más simples consisten en simplemente seleccionar campos, y tal vez reorganizarlos. | ||
| - | >awk resulta invaluable para el el procesado textual y numérico combinado. | + | >awk resulta invaluable para el el procesado textual y numérico combinado. Fue creado por Aho, Weinberger y Kerningham en los [[Laboratorios Bell]], de allí su nombre. |
| + | ====Uso básico==== | ||
| + | |||
| + | La operación básica de awk es analizar un conjunto de líneas de **entrada** en orden buscando por // | ||
| + | |||
| + | El comando | ||
| + | <code awk>awk programa [ficheros]</ | ||
| + | ejecuta los comandos de awk de la cadena '' | ||
| + | |||
| + | <code awk>awk -f fichero_salida [ficheros]</ | ||
| ====Estructura de Programa de awk==== | ====Estructura de Programa de awk==== | ||
| Línea 18: | Línea 27: | ||
| A su turno, cada línea de //entrada// resulta analizada por awk contra cada // | A su turno, cada línea de //entrada// resulta analizada por awk contra cada // | ||
| - | En cada declaración del programa pueden omitirse tanto el patrón como acción, pero no pueden omitirse ambas. Si un patrón carece de acción, la línea coincidente | + | Como en las declaraciones del programa awk tanto los patrones como acciones son opcionales, como forma de distinguir unos de otras se encierra la acción entre llaves '' |
| + | |||
| + | En cada declaración del programa pueden omitirse tanto el patrón como acción, pero no pueden omitirse ambas: | ||
| + | * Si la acción carece de patrón, la acción se ejecutará para todas las líneas de entrada. | ||
| + | * Si un patrón carece de acción, la línea coincidente se devolverá | ||
| Naturalmente, | Naturalmente, | ||
| Línea 27: | Línea 40: | ||
| patron { acción } # Este es el comentario de la linea. | patron { acción } # Este es el comentario de la linea. | ||
| </ | </ | ||
| - | |||
| - | |||
| - | |||
| - | |||
| ====Registros y Campos==== | ====Registros y Campos==== | ||
| Línea 44: | Línea 53: | ||
| La variable '' | La variable '' | ||
| - | ====Uso básico==== | ||
| - | La operación básica de awk es analizar un conjunto de líneas de **entrada** en orden buscando por // | ||
| - | |||
| - | El comando | ||
| - | <code awk>awk programa [ficheros]</ | ||
| - | ejecuta los comandos de awk de la cadena '' | ||
| - | |||
| - | <code awk>awk -f fichero_salida [ficheros]</ | ||
| =====Patrones===== | =====Patrones===== | ||
| Línea 166: | Línea 167: | ||
| ====Expresiones Relacionales de awk ==== | ====Expresiones Relacionales de awk ==== | ||
| - | Los patrones de awk pueden ser expresiones relacionales que incluyan los operadores relacionales convencionales ''<'', | + | Los patrones de awk pueden ser expresiones relacionales que incluyan los [[operadores en unix# |
| <code awk>NF % 2 == 0</ | <code awk>NF % 2 == 0</ | ||
| Línea 184: | Línea 185: | ||
| ====Patrones Combinacionales==== | ====Patrones Combinacionales==== | ||
| - | Un patrón puede ser cualquier | + | Un patrón puede ser cualquier |
| Por ejemplo, este programa de awk selecciona las líneas donde un primer campo comienza con '' | Por ejemplo, este programa de awk selecciona las líneas donde un primer campo comienza con '' | ||
