を使用してコマンドライン引数を取るシェルスクリプトがありますgetopt
。私のスクリプトのその部分は問題ありませんが、特定の引数を複数回送信できる特別なケースが必要です。
これが私がそれをどのように扱っているかの要旨です:
#!/bin/sh
i=0
# once in the case statement I do the following:
while true
do
case "$1" in
-p)
paramList[$i]=$2
((i++))
shift 2
;;
done
これはparamList
配列を適切に設定しています(私は思う)が、次のことを試みるたびに:
for param in $paramList
do
echo "Params: $param"
done
最初のパラメーターのみを返します。したがって、それを行う./myscript -p blah -p blah2 -p blah3
と、 が返されますblah
。
私は何を間違っていますか?