Successivo: Sommario dell'installazione, Precedente: Bug, Su: Installazione [Contenuti][Indice]
awk
liberamente disponibiliÈ piuttosto divertente mettere commenti simili nel vostro codice awk:
// Funzionano i commenti in stile C++? Risposta: sì! certo
Ci sono alcune altre implementazioni di awk
disponibili
gratuitamente.
Questa sezione descrive in breve dove è possibile trovarle:
awk
Brian Kernighan, uno degli sviluppatori originali di Unix awk
,
ha reso disponibile liberamente la sua implementazione di awk
.
Può essere scaricata da GitHub:
git clone git://github.com/onetrueawk/awk bwkawk
Questo comando crea una copia del deposito Git
in una directory chiamata bwkawk. Se si omette l’ultimo argomento
della riga di comando git
, la copia del deposito è creata in una
directory di nome awk.
Questa versione richiede un compilatore ISO C (standard 1990); il compilatore C contenuto in GCC (la collezione di compilatori GNU) è più che sufficiente.
Per eseguire la compilazione, si rivedano le impostazioni nel file
makefile, e quindi si richiami semplicemente make
.
Si noti che il risultato della compilazione ha come nome
a.out
; questo file va rinominato in maniera adeguata.
Vedi la sezione Sommario Estensioni Comuni
per una lista di estensioni in questo awk
che non sono in
POSIX awk
.
Incidentalmente, Dan Bornstein ha creato un deposito Git che contiene tutte le
versioni di BWK awk
che è riuscito a trovare. È disponibile in
git://github.com/danfuzz/one-true-awk.
mawk
Michael Brennan ha scritto un’implementazione indipendente di awk
,
di nome mawk
. È disponibile sotto la licenza
GPL (vedi la sezione Licenza Pubblica Generale GNU (GPL)),
proprio come gawk
.
Il sito di distribuzione originale di mawk
non contiene più
il codice sorgente. Una copia è disponibile in
http://www.skeeve.com/gawk/mawk1.3.3.tar.gz.
Dal 2009 è Thomas Dickey a occuparsi della manutenzione di mawk
.
Le informazioni di base sono disponibili nella
pagine web del progetto.
Il puntatore URL da cui scaricare è
http://invisible-island.net/datafiles/release/mawk.tar.gz.
Una volta scaricato,
per scompattare questo file può essere usato gunzip
.
L’installazione è simile a quella di gawk
(vedi la sezione Compilare e installare gawk
su sistemi di tipo Unix).
Vedi la sezione Sommario Estensioni Comuni
per una lista di estensioni in mawk
che non sono in POSIX awk
.
mawk
2.0Nel 2016, Michael Brennan ha iniziato nuovamente lo sviluppo di mawk
.
Le sue versioni di sviluppo sono disponibili tramite Git dalla pagina GitHub
del progetto.
awka
Scritto da Andrew Sumner,
awka
traduce i programmi awk
in C, li compila,
e prepara il codice eseguibile usando una libreria di funzioni che
implementano le funzionalità di base di awk
.
Comprende anche un certo numero di estensioni.
Il traduttore di awk
è rilasciato sotto la licenza GPL, e la
relativa libreria sotto la licenza LGPL.
Per ottenere awka
, si visiti
il sito https://sourceforge.net/projects/awka.
Il progetto sembra essere stato congelato; non ci sono state modifiche nel codice sorgente dal 2001 circa.
pawk
Nelson H.F. Beebe all’Università dello Utah ha modificato
BWK awk
per fornire informazioni di temporizzazione e profilazione.
Questo è differente dall’usare gawk
con l’opzione --profile
(vedi la sezione Profilare i propri programmi awk
)
nel senso che fornisce un profilo basato sul consumo di CPU, non sul
numero di esecuzioni di una data riga di codice.
Sia può trovare sia in
ftp://ftp.math.utah.edu/pub/pawk/pawk-20030606.tar.gz
che in
http://www.math.utah.edu/pub/pawk/pawk-20030606.tar.gz.
awk
BusyBox è un programma distribuito con licenza GPL che fornisce versioni
ridotte di parecchie piccole applicazioni, all’interno di un singolo modulo
eseguibile. È stato ideato per sistemi
integrati.
Include un’implementazione completa di POSIX awk
. Quando lo si
compila occorre prestare attenzione a non eseguire ‘make install’, perché
in questo modo si andrebbero a sostituire copie di altre applicazioni nella
directory /usr/local/bin del sistema corrente. Per ulteriori
informazioni, si veda la pagina principale del progetto.
awk
per OpenSolarisLe versioni di awk
in /usr/xpg4/bin e /usr/xpg6/bin su
Solaris sono grosso modo conformi allo standard POSIX. Sono basate sul
comando awk
preparato per i PC dalla ditta Mortice Kern. È stato
possibile compilare e far funzionare questo codice sotto GNU/Linux dopo 1–2
ore di lavoro. Rendere questo codice più generalmente portabile (usando gli
strumenti GNU Autoconf e/o Automake) richiederebbe ulteriore lavoro, che non è
stato fin qui compiuto, almeno per quel che risulta a chi scrive.
Il codice sorgente era un tempo disponibile dal sito web OpenSolaris. Tuttavia, il progetto è terminato, e il sito web chiuso. Fortunatamente, il progetto Illumos mette a disposizione questa implementazione. Si possono vedere i singoli file in https://github.com/joyent/illumos-joyent/blob/master/usr/src/cmd/awk_xpg4.
goawk
Questo è un interpretatore di awk
scritto nel
Linguaggio di programmazion Go.
Implementa POSIX awk
, con alcune estensioni minori.
Il codice sorgente è disponibile in https://github.com/benhoyt/goawk.
L’autore ha scritto un buon
articolo
che descrive l’implementazione.
jawk
Questo è un interprete per awk
scritto in Java. Dichiara di
essere un interprete completo, anche se, poiché usa funzionalità di Java
per l’I/O e per la ricerca di regexp, il linguaggio che supporta
è differente da awk
POSIX.
Ulteriori informazioni sono disponibili sulla
pagina principale del progetto.
Questo è un interprete awk
incorporabile, derivato da
mawk
. Per ulteriori informazioni, si veda
http://repo.hu/projects/libmawk/.
awk
incorporabile di Mircea Neacsuawk
, di Mircea NeacsuMircea Neacsu ha creato un interpretatore awk
incorporabile, basato su BWK awk
. È disponibile
nel sito https://github.com/neacsum/awk.
pawk
Questo è un modulo Python che intende introdurre funzionalità di tipo
awk
in Python. Si veda https://github.com/alecthomas/pawk per
ulteriori informazioni. (Questo programma non è correlato con la versione
modificata da Nelson Beebe di BWK awk
, descritta prima.)
awk
Questo è un interprete di awk
incorporabile. Per ulteriori
informazioni, si veda
https://code.google.com/p/qse/.
QTawk
Questa è un’implementazione indipendente di awk
distribuita con la
licenza GPL. Ha un gran numero di estensioni rispetto ad awk
standard, e può non essere sintatticamente compatibile al 100% con esso. Si
veda http://www.quiktrim.org/QTawk.html per ulteriori informazioni,
compreso il manuale. Il puntatore per scaricare QuikTrim non punta all’ultima
versione: si veda http://www.quiktrim.org/#AdditionalResources per un
puntatore alla versione corrente.
Il progetto sembra essere fermo; non ci sono nuove versioni del codice a partire dal 2014 circa.
Si veda anche [in inglese] la sezione “Versions and implementations”
della voce di
Wikipedia su awk
per informazioni su ulteriori versioni.
Successivo: Sommario dell'installazione, Precedente: Bug, Su: Installazione [Contenuti][Indice]