Optional option argument with getopts
问题 while getopts \"hd:R:\" arg; do case $arg in h) echo \"usgae\" ;; d) dir=$OPTARG ;; R) if [[ $OPTARG =~ ^[0-9]+$ ]];then level=$OPTARG else level=1 fi ;; \\?) echo \"WRONG\" >&2 ;; esac done level refers to parameter of -R , dir refers to parameters of -d when I input ./count.sh -R 1 -d test/ it works rightly when I input ./count.sh -d test/ -R 1 it works rightly but I want to make it work when I input ./count.sh -d test/ -R or ./count.sh -R -d test/ This means that I want -R has a default