2008年8月26日星期二

“set –”与循环语句的赋值

set –命令可以设置系统默认的变量。当for循环语句没有变量赋值时,就会使用这个默认的变量。
不太懂?举个例子

set — “a b c” #赋值默认变量

set | grep _=
_=a b c # _=就是代表系统默认变量

那么我们就可以在for中使用默认的变量

for i
do
echo $i
done

这个for语句中,是没有in $args参数的。

说这个问题的原因是,在freeBSD的man getopt给出的例子中,就采取这种方式给for 赋值。但是不幸的是,在某些bash中,可能会无效,所以还不如老老实实的在for i 后边跟 in $args。

没有评论: