Как пометить ошибку в скрипте bash, который требует аргумента для getopt, но пользователь его не передал? например приведенный ниже сценарий требует аргумента для опции «t»:
#!/bin/bash
while getopts "ht:" OPTION
do
case $OPTION in
h)
echo "Hi"
;;
t)
echo You entered $OPTARG
;;
esac
done
Я хочу поймать ошибку ниже, напечатать что-то еще и выйти. В настоящее время он продолжает оценивать дополнительные аргументы без выхода.
$ ./x.sh -h -t aa # (this is fine)
Hi
You entered aa
$ ./x.sh -h -t # (this is not handled)
Hi
No arg for -t option # (this error is being printed by bash)