Successivo: , Precedente: , Su: Per iniziare   [Contenuti][Indice]


1.8 Quando usare gawk

Ora che abbiamo visto qualcosa di quel che awk è in grado di fare, ci si potrà chiedere come awk potrebbe tornare utile. Usando programmi di utilità, criteri di ricerca sofisticati, separatori di campo, istruzioni aritmetiche, e altri criteri di selezione, è possibile produrre degli output molto più complessi. Il linguaggio awk è molto utile per fornire dei tabulati partendo da grandi quantità di dati grezzi, per esempio riassumendo informazioni dall’output di altri programmi di utilità come ls. (Vedi la sezione Un esempio più complesso.)

I programmi scritti con awk sono normalmente molto più corti dei loro equivalenti in altri linguaggi. Ciò rende i programmi awk facili da comporre e da utilizzare. Spesso i programmi awk possono essere scritti al volo a terminale, usati una volta sola e buttati via. Poiché i programmi awk sono interpretati, si può evitare la (normalmente laboriosa) parte di compilazione nel ciclo tipico dello sviluppo software, ossia edita-compila-prova-correggi.

In awk sono stati scritti programmi complessi, compreso un assembler completo, pluri-piattaforma per microprocessori a 8-bit (vedi la sezione Glossario, per maggiori informazioni), e un assembler di microcodice per un computer dedicato esclusivamente al linguaggio Prolog. Le possibilità dell’originale awk erano messe a dura prova da programmi di questa complessità, ma le versioni moderne sono più robuste.

Se capita di scrivere programmi awk più lunghi di, diciamo, qualche centinaio di righe, si potrebbe considerare la possibilità di usare un linguaggio di programmazione differente da awk. La shell consente di ricercare stringhe ed espressioni regolari; inoltre consente di usare in maniera efficace i comandi di utilità del sistema. Python offre un piacevole equilibrio tra la facilità di una programmazione ad alto livello, e la possibilità di interagire a livello di sistema operativo.10


Note a piè di pagina

(10)

Altri linguaggi di script popolari comprendono Ruby e Perl.


Successivo: , Precedente: , Su: Per iniziare   [Contenuti][Indice]