title: /me gawks
link: http://jj.isgeek.net/2005/05/me-gawks/
author: Jj
description: 
post_id: 9
date: 2005/05/05 19:25:44
created_gmt: 2005/05/06 00:25:44
comment_status: open
slug: me-gawks

> If you are like many computer users, you would frequently like to make changes in various text files wherever certain patterns appear, or extract data from parts of certain lines while discarding the rest. To write a program to do this in a language such as C or Pascal is a time-consuming inconvenience that may take many lines of code. The job is easy with awk, especially the GNU implementation: gawk.

Hoy en el trabajo nos encontramos con la sorpresa de que una serie de archivos XML que habiamos generado con una herramienta usaban otra versiÃ³n de DTD que el que utilizaba la otra herramienta con las cuales se usaban.

TenÃ­amos que mover las propiedades de mas de 100 archivos y poner nombres de path en algunas y en otras no, asi que me pareciÃ³ una oportunidad buenÃ­sima para aprender [Awk](http://www.gnu.org/software/gawk/gawk.html). Por suerte tenÃ­a por ahÃ­ unos manuales y fuÃ© mucho mas sencillo de lo que esperÃ©. FuÃ© sÃ³lo aÃ±adir algunas reglas, cambiar los valores de FS, RS, OFS de acuerdo al caso y seguir la lÃ³gica normal que se usarÃ­a en cualquier algoritmo

Luego hice otro shell script para poder reemplazar todos los XML que me enviaron y todo saliÃ³ perfecto.

Preferimos pensar que el tiempo que me demore en hacer el script fuÃ© menor al que me hubiera tomado reemplazar manualmente todos los archivos, ademÃ¡s el script lo podemos volver a usar si generÃ¡ramos mas archivos de la misma manera o para la prÃ³xima ya no me tomara tiempo aprender Awk ;)

## Comments

**[breno](#13 "2005-05-05 23:37:21"):** Creo que tu sigues usando Debian, por lo tanto seria que tu nawkeas, no gawkeas, ya que la implementaciÃ³n de AWK incluida en el base system de Debian es nawk y no gawk :D

**[Jj](#14 "2005-05-06 13:34:21"):** De hecho, lo hice en un Suse, pero niteresante saber eso :o!

