У мене цей код -
#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
Коли я запускаю bash getoptDemos.sh(без опції), він друкує hiзамість виклику функції usage. Він називає використання, коли задані інші варіанти, ніж w, h та l. Тоді чи не може він працювати, коли не вказані варіанти.
Я спробував з допомогою ?, \?, :замість , *але я не можу домогтися того, чого я хотів. Я маю в виду все docsна getoptкаже , що це використовувати ?.
Що я роблю неправильно?
/bin/bash