La struttura di controllo
case
effettua un solo test sul valore di una variabile per determinare quale caso applicare (se previsto) fra quelli presenti nello script. Ogni caso è individuato da un etichetta che coincide con il valore eventualmente testato. All'interno di un caso è possibile, quindi, inserire le istruzioni relative al valore intercettato. I comandi di un caso previsto terminano con i caratteri ;;
, è possibile descrivere un caso di default (seguito dalla struttura di controllo se nessun valore intercettato rientra fra quelli previsti) attraverso l'etichetta *)
. La sintassi è la seguente:case $valore in
caso1)
...
;;
caso2)
...
;;
...
*)
...
;;
esac
Esempio:
#!/bin/bash
#Uso di case
if [ $# -eq 1 ]
then
if [ -e $1 ]
then
echo -e "Cancellare il file $1?\\n1. si;\\n2. no;"
read answer
case $answer in
1)
rm $1
echo "Ho cancellato il file $1!"
;;
2)
echo "Il file $1 non è stato cancellato!"
;;
*)
echo "Il file $1 non è stato cancellato!"
;;
esac
else
echo "Il file $1 non esiste!"
fi
else
echo "Indicare il nome del file!"
fi
Nessun commento:
Posta un commento