Tengo este código
#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
Cuando ejecuto bash getoptDemos.sh
(sin la opción) se imprime en hi
lugar de llamar a la función usage
. Llama al uso cuando se dan opciones distintas de w, h y l. Entonces no puede funcionar cuando no se especifican opciones.
He intentado usar ?
, \?
, :
en lugar de *
, pero no puedo lograr lo que quería. Me refiero a todo el docs
en getopt
lo dice de usar ?
.
¿Qué estoy haciendo mal?
/bin/bash