パ Martin Weitzel <@mikros.systemware.de:martin@mwtech.uucp> ㎝ Maarten Litmaath <maart@nat.vu.nl> 矗ㄑ氮
璝絋﹚把计ぃ穦禬筁杠ノ
eval last=\${$#}
才 POSIX 夹非 shell 柑ぃ恨Τぶ把计常ノ瓃よ猭
┏よ猭琌﹚Τノ
for last do : done
┦暗猭琌:
for i do third_last=$second_last second_last=$last last=$i done璝稱暗琌盢程把计埃┪琌盢帮把计抖は筁ㄓ┪琌ノ 材 N 把计┏琌ぃノ硑 subprocess ノ shell ず 暗猭
t0= u0= rest='1 2 3 4 5 6 7 8 9' argv= for h in '' $rest do for t in "$t0" $rest do for u in $u0 $rest do case $# in 0) break 3 esac eval argv$h$t$u=\$1 argv="$argv \"\$argv$h$t$u\"" # (1) shift done u0=0 done t0=0 done # now restore the arguments eval set x "$argv" # (2) shift硂ㄒノ 999 把计莱赣镑ノ灿(1)籔(2)夹ボ よ稱快猭弧狝ぃ恨把计柑Τぐ或┣じ硂ㄢ︽常ぃ穦 畉岿
璶т材 N 把计ノ
eval argN=\$argv$N
璶盢把计抖は筁ㄓ夹ボ(1)ê︽ゲ斗эΘ
argv="\"\$argv$h$t$u\" $argv"絤策程把计埃よ猭
璝す砛㊣场硂摸硑 subprocess 暗猭粁碞快 ┏琌т argvN
N=1 for i do eval argv$N=\$i N=`expr $N + 1` done璶盢把计抖は筁ㄓ临Τぃノ硑 subprocessΤ虏虫よ猭 硂よ猭ノㄓ埃程把计 ぃ筁璶猔種琌 argvN ぃ琌 ㄓ材 N 把计
argv= for i do eval argv$#=\$i argv="\"\$argv$#\" $argv" shift done eval set x "$argv" shift