关于while循环的问题
while循环是在一个新的子shell下进行的。如:
x=0
while [$x -lt 10];
do
x=`expr $x+1`
done
echo $x
$x显示的0
是因为在echo的时候已经退出while的子shell了,那有什么好的处理方法吗? ;) 把echo $X放在while循环体中 我那本书讲的不太明白,书上说要用重定向STDIN,可我觉得好像跟这个问题没有关系,可能是翻译的问题吧(我那本书是翻译的)
如:
file是个文件
exec 4 <&0 < file
while
do
...
done
exec 0<&4 4<&- (关闭描述符)
页:
[1]