1
我試圖讓下面的我的腳本爲有效電話:殼牌:設置使用getopts的可選參數或使用默認值?
sh name.sh -l -a
sh name.sh -l
這是我迄今使用getopts的代碼,其中-A是一個必需的參數:
我只需要知道如何在getopts中設置可選標誌-a以及它的參數。 謝謝:)
我試圖讓下面的我的腳本爲有效電話:殼牌:設置使用getopts的可選參數或使用默認值?
sh name.sh -l -a
sh name.sh -l
這是我迄今使用getopts的代碼,其中-A是一個必需的參數:
我只需要知道如何在getopts中設置可選標誌-a以及它的參數。 謝謝:)
據我所知,getopts
具有可選的選項參數不支持。你可以自己通過處理選項參數解決此:
#!/bin/bash
while getopts "x" o; do
case "${o}" in
x)
OPTARG=${!OPTIND}
if [ "${OPTARG:0:1}" == "-" ] || [ "$#" -lt "$OPTIND" ]; then
OPTARG="DEFAULT"
else
OPTIND=$(($OPTIND + 1))
fi
echo $OPTARG
;;
esac
done
[與getopts的可選選項參數(的可能的複製http://stackoverflow.com/questions/11517139/optional-option-argument-with-getopts ) – qzb
@qzb沒有,我使用getopts的和不想做沒有它。 – Momina