16/02/09 12:13:30.71 .net
とりあえず set -- も POSIX なんだけど
autoconf では set x ...; shift をすすめている
少し訂正
eval の際のクォートが抜けていた。連続した空白等で違いが出る
sh -c だと見難いので、function で書きなおした
$ parseArgs () { i=0; for arg; do echo "arg[$((i+=1))]: $arg"; done; }
$ opt471="-Q 'DELE (spaces) a.txt'"
$ eval parseArgs "${opt471}"
$ eval set -- "${opt471}"
$ parseArgs "$@"
ついでにIFS を使うもの
$ LF='
'
$ opt471='
-Q
DELE a.txt
'
$ IFS=$LF; parseArgs $opt471 'another option' 'more...'