关于环境变量的问题,请大家帮忙看看

关于环境变量的问题,请大家帮忙看看

#i/bin/sh
if [ -z $EDITOR ];then
echo "Your EDITOR environment is not set"
else
echo "Using vi as the default editor"
EDITOR=vi
export EDITOR
fi
当我在给EDITOR变量赋值后,#EDITOR=hello export EDITOR
便开始运行该脚本,可以执行到"User vi as the default editor"
但是,通过echo $EDITOR查看,发现变量值并没有变为vi,还是hello,怎么回事啊?请高手指点!!      
shell script 是在 sub-shell 中运行的, 不会影响当前 shell. 从 C 语言的角度理解: 修改子进程的环境变量不会影响父进程的环境变量      
哦,谢谢老大,明白了。