linux:export, source命令

1. 如果把几个设置环境变量写成一个脚本,例如test.sh
 export test1='aaa'
export test2='bbb'
然后在提示符下键入: ./test.sh 
再键入echo $test1
你将看不到任何东西。 原因是: 这样执行是时候是调用一个子shell,当子shell结束时,变量也就结束了生命。因此是看不到的。
==================================
2. 用source test.sh时,可以看到结果输出。这证明,source是在当前shell环境中执行的。
==================================
3. 如果把上例子写成下面的形式

export test1='aaa'
export test2='bbb'
echo $test1
echo $test2
然后执行,有输出了。可以看到
aaa
bbb
但用echo $test1却什么也没有。 原因是: 执行调用一个子shell,把结果输出到终端,所以我们可以看到结果。
========================
4. 在提示符下键入bash, 创建一个子shell
在提示符下输入如下的形式:
export test1='aaa'
echo $test1
可以看到有输出aaa
然后用exit退出子shell,回到父shell
echo $test1
什么也看不到。

 

转:http://blog.sina.com.cn/s/blog_498a6eeb0100d8ol.html

posted @ 2012-07-11 16:47  路人浅笑  阅读(2671)  评论(0编辑  收藏  举报