关于while循环的问题

关于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<&- (关闭描述符)