[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico] [volume] [parte]


Capitolo 150.   Shell POSIX: strutture di controllo

Sintassi Descrizione
for variabile [in valore...]
do
    lista_di_comandi
done
La variabile indicata dopo for viene posta, di volta in volta, al valore di ciascun elemento della lista che segue la sigla in, eseguendo ogni volta la lista di comandi che segue do (una volta per ogni valore disponibile). Se la sigla in (e i suoi argomenti) viene omessa, il comando for esegue la lista di comandi (do) una volta per ogni parametro posizionale esistente. In pratica è come se venisse usato: in $@.
case parola in
    [modello [ | modello]... ) \
  \lista_di_comandi ;; ]
    ...
    [*) lista_di_comandi ;; ]
esac
La parola che segue case viene confrontata con ognuno dei modelli, usando le stesse regole dell'espansione di percorso (i nomi dei file). La barra verticale (|) viene usata per separare i modelli quando questi rappresentano possibilità diverse di un'unica scelta.
Quando viene trovata una corrispondenza, viene eseguita la lista di comandi corrispondente. Dopo il primo confronto riuscito, non ne vengono controllati altri dei successivi. L'ultimo modello può essere *), corrispondente a qualunque valore, che si può usare come alternativa finale in mancanza di altro.

if lista_condizione
then
    lista_di_comandi
[elif lista_condizione
then
    lista_di_comandi]
...
[else
    lista_di_comandi]
fi
Inizialmente viene eseguita la lista che segue if che costituisce la condizione. Se il valore restituito da questa lista è zero (cioè Vero), allora viene eseguita la lista seguente then e il comando termina. Altrimenti viene eseguita ogni elif in sequenza, fino a che ne viene trovata una la cui condizione si verifica. Se nessuna condizione si verifica, viene eseguita la lista che segue else, sempre che esista.
while lista_condizione
do
    lista_di_comandi
done
Il comando while esegue ripetitivamente la lista che segue do finché la lista che rappresenta la condizione continua a restituire il valore zero (Vero).
until lista_condizione
do
    lista_di_comandi
done
Il comando until è analogo a while, cambia solo l'interpretazione della lista che rappresenta la condizione nel senso che il risultato di questa viene invertito (negazione logica). In generale, per avere maggiori garanzie di compatibilità conviene utilizzare solo il comando while, invertendo opportunamente la condizione.
[function] nome () {
    lista_di_comandi
}
La lista di comandi viene eseguita ogni volta che il nome della funzione è utilizzato come comando.
Quando viene eseguita una funzione, i parametri posizionali contengono gli argomenti di questa funzione e anche # restituisce un valore corrispondente alla situazione.
È possibile utilizzare il comando interno return per concludere anticipatamente l'esecuzione della funzione.

Appunti di informatica libera 2007.02 --- Copyright © 2000-2007 Daniele Giacomini -- <daniele (ad) swlibero·org>


Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome shell_posix_strutture_di_controllo.htm

[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico]

Valid ISO-HTML!

CSS validator!