分页: 1 / 1

从文件里给参数赋值问题(已解决,蛋碎了)

发表于 : 2011-12-10 12:57
枫叶饭团
我想从文件里给两个参数赋值

代码: 全选

while read x y;do echo $x $y ;done < file
结果是可以显示出$x,$y.
但是如果再运行echo $x $y就为空了...但是我要的效果就是在while外也能使用xy的值...

Re: 从文件里给参数赋值问题

发表于 : 2011-12-10 13:18
sunfish
while循环是直到read x y命令不成功才退出的,所以整个循环结束后xy的值是read读取不成功的值即空了

Re: 从文件里给参数赋值问题

发表于 : 2011-12-10 14:05
枫叶饭团
pocoyo 写了:

代码: 全选

read x y < file
一行一个值
不行哦,这样子只有一个值

Re: 从文件里给参数赋值问题

发表于 : 2011-12-10 14:06
枫叶饭团
自己解决了,因为cat、管道等命令都会开子进程所以就成了局部变量...
用重定向就能防止开进程....

Re: 从文件里给参数赋值问题

发表于 : 2011-12-11 20:55
ChenFengyuan
枫叶饭团 写了:自己解决了,因为cat、管道等命令都会开子进程所以就成了局部变量...
用重定向就能防止开进程....
原来如此,以前也有这个疑问

Re: 从文件里给参数赋值问题(已解决,蛋碎了)

发表于 : 2011-12-11 20:59
eexpress
ChenFengyuan, 你居然不推广perl。