может кто-нибудь сказать мне, если есть какой-то способ проверить, сопровождается ли необязательный аргумент строкой, и если нет, то будет сообщение об ошибке.
Моя цель - получить что-то вроде ./ nameofscript -a строка
I=0
while getopts ":a:k" opt; do
case ${opt} in
a ) I=1
string="$OPTARG"
Поэтому моя цель состоит в том ... если пользовательский тип ./nameofscript будет продолжен, поскольку не был передан необязательный аргумент ... но если пользователь вводит ./nameofscript -a программа имеет чтобы выйти, потому что не было никакой строки за ним. Пользователь должен напечатать ./nameofscript -a строку, и если он этого не сделает, то появится сообщение об ошибке, говорящее: вам нужно набрать что-нибудь, blablabla ...
Так есть ли решение, как узнать, был ли -a набрал / if -a был напечатан и сопровождается строкой.