Bash:如何检测“重复”标志,例如-vvv?
目前,我有一些 flag -x,以及其他一些:
while getopts abcx opt; do
case $opt in
a) a=true; ;;
b) b=true; ;;
c) c=true; ;;
x) x=true; ;;
esac
done
但是,我想让它添加一个x会增加标志的级别。我已经看到这个vfor verbose 额外的 v 增加了冗长。如何在我的 Bash 脚本中检测到这一点?
回答
我想这样做,以便添加一个
x会增加标志的级别。
使用计数器:
unset a b c x
while getopts abcx opt; do
case $opt in
a) a=true; ;;
b) b=true; ;;
c) c=true; ;;
x) ((x++)); ;;
esac
done
echo "x=$x"
然后将其用作:
bash optscript.sh -abcxxx
x=3