Ho questo codice -
#getoptDemo.sh
usage()
{
echo "usage: <command> options:<w|l|h>"
}
while getopts wlh: option
do
case $option in
(w)
name='1';;
(l)
name='2';;
(h)
name='3';;
(*)
usage
exit;;
esac
done
print 'hi'$name
Quando corro bash getoptDemos.sh(senza l'opzione) stampa hiinvece di chiamare la funzione usage. Chiama l'utilizzo quando vengono fornite opzioni diverse da w, heel. Quindi non può funzionare quando non vengono specificate opzioni.
Ho provato ad utilizzare ?, \?, :al posto di *, ma non riesco a ottenere quello che volevo. Voglio dire, tutto il docssu getoptdice che da usare ?.
Che cosa sto facendo di sbagliato?
/bin/bash