日期:2014-05-16  浏览次数:20749 次

子shell改变父shell定义变量的值
#!/bin/bash
row=0
cat file|while read line
do
  row=`expr $row + 1`
  echo "$row:$line"
done
echo $row


最后输出的结果是0,怎么才能使while产生的子shell的row变量是脚本最开始定义的row=1呢?
假定文件中有5行,我期望的输出是5

------解决方案--------------------
子进程是无法改变父进程的变量的