+ -
当前位置:首页 → 问答吧 → 求助 bash脚本问题

求助 bash脚本问题

时间:2011-11-13

来源:互联网

Hi:
大家好,我知道set一般是设置shell的环境。eg: set -e, set +e

我今天看到别人写的脚本,里面有类似这样的句子:wuya@wuya:~/test$ set $(echo 1 2 3 )

然后地下是这么用的:
代码:
wuya@wuya:~/test$ echo $1
1
wuya@wuya:~/test$ echo $2
2
wuya@wuya:~/test$ echo $3
3
wuya@wuya:~/test$ echo $4

wuya@wuya:~/test$ echo $*
1 2 3
wuya@wuya:~/test$ echo $@
1 2 3
wuya@wuya:~/test$


这也就是说相当于脚步的位置参数, 对此用法有些不解,有人可以帮我解释下吗? 谢谢!

作者: zhi5631   发布时间: 2011-11-13

本来就可以使用set来设置位置参数。
代码:
set $(echo 1 2 3 )
在效果上和
代码:
set 1 2 3
是一样的,就是设置$1为1,$2为2,$3为3.
详情请参考
代码:
man set

作者: redhatlinux10   发布时间: 2011-11-13

thanks very much. 我知道两者的效果是一样的,只是不确定set可设置位置参数,明白了,thanks。

作者: zhi5631   发布时间: 2011-11-13

热门下载

更多