Moja skorupa jest dość prosta, jak następuje:jaki sposób OPTIND zmienna praca w powłoce wbudowane getopts
while getopts "abc:" flag; do
echo "$flag" $OPTIND $OPTARG
done
I zrobić kilka testów, jak następuje:
[email protected]:~/lab/shell/getopts_go$ sh foo.sh -abc CCC Blank
a 1
b 1
c 3 CCC
[email protected]:~/lab/shell/getopts_go$ sh foo.sh -a -b -c CCC Blank
a 2
b 3
c 5 CCC
[email protected]:~/lab/shell/getopts_go$ sh foo.sh -ab -c CCC Blank
a 1
b 2
c 4 CCC
[email protected]:~/lab/shell/getopts_go$ sh foo.sh -a -bc CCC Blank
a 2
b 2
c 4 CCC
nie mogę zrozumieć, jak działa OPTIND
z innym wywołaniem wiersza poleceń, jestem zdezorientowany przez dane wyjściowe.
Czy możesz pomóc w ustaleniu mechanizmu obliczania OPTIND
?
Doskonały skrypt testowy do zrozumienia OPTIND –