Successivo: Separatori campo da riga di comando, Precedente: Separare campi con regexp, Su: Separatori di campo [Contenuti][Indice]
Ci sono casi in cui si abbia la necessità di analizzare ciascun carattere di un
record separatamente. Questo si può fare in gawk
semplicemente
assegnando la stringa nulla (""
) a FS
. (e.c.)
In questo caso,
ogni singolo carattere nel record diventa un campo separato.
Per esempio:
$ echo a b | gawk 'BEGIN { FS = "" } > { > for (i = 1; i <= NF; i = i + 1) > print "Il campo", i, "è", $i > }' -| Il campo 1 è a -| Il campo 2 è -| Il campo 3 è b
Tradizionalmente, il comportamento di FS
quando è impostato a
""
non è stato definito. In questo caso, la maggior parte delle
versioni UNIX di awk
trattano l’intero record come se avesse un
unico campo.
(a.b.)
In modalità di compatibilità
(vedi la sezione Opzioni sulla riga di comando),
se FS
è la stringa nulla, anche gawk
si comporta in questo modo.