Successivo: Esercizi su Input, Precedente: Directory su riga di comando, Su: Leggere file [Contenuti][Indice]
RS
.
Le possibilità sono le seguenti:
Valore di RS | Record separati da … | awk / gawk |
---|---|---|
Un carattere singolo | Quel carattere | awk |
La stringa nulla ("" ) | Serie di due o più ritorni a capo | awk |
Un’espressione regolare | Testo corrispondente alla regexp | gawk |
FNR
indica quanti record sono stati letti dal file in input corrente;
NR
indica quanti record sono stati letti in totale.
gawk
imposta RT
al testo individuato da RS
.
awk
divide
i record in singoli campi, chiamati $1
, $2
e così
via. $0
è l’intero record, e NF
indica quanti campi
contiene. Il metodo di default per dividere i campi utilizza i
caratteri di spazio vuoto.
$NF
.
Ai campi possono anche essere assegnati dei valori, e questo implica che il
valore di $0
sia ricalcolato se ad esso si fa riferimento in seguito.
Fare un assegnamento a un campo con un numero maggiore di NF
crea il
campo e ricostruisce il record, usando OFS
per separare i campi.
Incrementare NF
fa la stessa cosa. Decrementare NF
scarta dei
campi e ricostruisce il record.
Valore del separatore di campo | Campi separati … | awk / gawk |
---|---|---|
FS == " " | Da serie di spazi vuoti | awk |
FS == un solo carattere | Da quel carattere | awk |
FS == espr. reg. | Dal testo che corrisponde alla regexp | awk |
FS == "" | Così ogni singolo carattere è un campo separato | gawk |
FIELDWIDTHS == lista di colonne | Basata sulla posizione del carattere | gawk |
FPAT == regexp | Dal testo attorno al testo corrispondente alla regexp | gawk |
FS
può essere impostato dalla riga di comando con l’opzione
-F.
Si può fare la stessa cosa usando un assegnamento di variabile da riga di
comando.
PROCINFO["FS"]
permette di sapere come i campi sono separati.
getline
nelle sue diverse forme serve per leggere record aggiuntivi
provenienti dal flusso di input di default, da un file, o da una pipe
o da un coprocesso.
PROCINFO[file, "READ_TIMEOUT"]
si può usare per impostare un
tempo limite alle operazioni di lettura da file.
awk
standard;
gawk
le ignora se non è in modalità POSIX.
Successivo: Esercizi su Input, Precedente: Directory su riga di comando, Su: Leggere file [Contenuti][Indice]