Successivo: Righe multiple, Precedente: Separazione in base al contenuto, Su: Leggere file [Contenuti][Indice]
gawk
sta dividendo i recordCome visto sopra, gawk
fornisce tre metodi indipendenti per
dividere i record in input in campi. Il meccanismo utilizzato dipende da
quale delle tre variabili — FS
, FIELDWIDTHS
o
FPAT
— è stato definito per ultimo.
Inoltre, un analizzatore di input che utilizzi l’API (Application
Programming Interface) può scegliere di modificare il meccanismo di
analisi dei record; si veda Analizzatori di input personalizzati per ulteriori informazioni
riguardo a questa funzionalità.
Per ripristinare la normale divisione in campi dopo aver fatto uso
di FIELDWIDTHS
e/o FPAT
, è sufficiente assegnare un valore
alla variabile FS
.
Si può usare ‘FS = FS’ per farlo, senza bisogno di conoscere il
valore corrente di FS
.
Per determinare quale sia il tipo di divisione dei campi attiva al momento,
si usi PROCINFO["FS"]
(vedi la sezione Variabili predefinite con cui awk
fornisce informazioni).
Il valore è "FS"
se si usa la maniera normale di divisione dei campi,
"FIELDWIDTHS"
se si usa la divisione in campi di lunghezza fissa,
oppure "FPAT"
se si una la divisione in campi in base al contenuto:
if (PROCINFO["FS"] == "FS") divisione normale in campi … else if (PROCINFO["FS"] == "FIELDWIDTHS") divisione in campi a lunghezza fissa … else if (PROCINFO["FS"] == "FPAT") divisione in campi in base al contenuto … else divisione in campi da analizzatore di input API … (funzionalità avanzata)
Quest’informazione è utile se si sta scrivendo una funzione che
deve cambiare provvisoriamente FS
o FIELDWIDTHS
, leggere alcuni
record e poi ripristinare le inpostazioni originali. Si veda
(vedi la sezione Leggere la lista degli utenti per un esempio di una funzione di questo tipo.
Successivo: Righe multiple, Precedente: Separazione in base al contenuto, Su: Leggere file [Contenuti][Indice]