AWK - Funzioni definite dall'utente
Le funzioni sono elementi costitutivi di base di un programma. AWK ci consente di definire le nostre funzioni. Un programma di grandi dimensioni può essere suddiviso in funzioni e ciascuna funzione può essere scritta / testata in modo indipendente. Fornisce la riutilizzabilità del codice.
Di seguito è riportato il formato generale di una funzione definita dall'utente:
Sintassi
function function_name(argument1, argument2, ...) {
function body
}
In questa sintassi, il function_nameè il nome della funzione definita dall'utente. Il nome della funzione deve iniziare con una lettera e il resto dei caratteri può essere qualsiasi combinazione di numeri, caratteri alfabetici o trattino basso. Le parole di riserva di AWK non possono essere utilizzate come nomi di funzioni.
Le funzioni possono accettare più argomenti separati da virgola. Gli argomenti non sono obbligatori. È inoltre possibile creare una funzione definita dall'utente senza alcun argomento.
function body consiste in una o più istruzioni AWK.
Scriviamo due funzioni che calcolano il numero minimo e massimo e chiamiamo queste funzioni da un'altra funzione chiamata main. Ilfunctions.awk il file contiene -
Esempio
# Returns minimum number
function find_min(num1, num2){
if (num1 < num2)
return num1
return num2
}
# Returns maximum number
function find_max(num1, num2){
if (num1 > num2)
return num1
return num2
}
# Main function
function main(num1, num2){
# Find minimum number
result = find_min(10, 20)
print "Minimum =", result
# Find maximum number
result = find_max(10, 20)
print "Maximum =", result
}
# Script execution starts here
BEGIN {
main(10, 20)
}
Eseguendo questo codice, ottieni il seguente risultato:
Produzione
Minimum = 10
Maximum = 20