码迷,mamicode.com
首页 > 系统相关 > 详细

Linux Command - source

时间:2015-04-07 21:38:14      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:

    我们知道source是执行脚本的,那他和普通执行有什么不同呢?

    test1.sh

#!/bin/sh

export KKK=111

    普通执行:

tdtc010@tdtc010-Vostro-270:~$ ./test1.sh
tdtc010@tdtc010-Vostro-270:~$ echo $KKK
    无结果。

    source执行:

tdtc010@tdtc010-Vostro-270:~$ source test1.sh
tdtc010@tdtc010-Vostro-270:~$ echo $KKK
111
    有结果。

    为什么会这样呢?

    因为./test1.sh是在子shell里运行的,并没有反映到父shell里;所以看不到结果。

    但是source就是在本shell中执行的,所以能看到结果。


   因为他的“立显”特性,source(或点命令)通常用于重新执行刚修改的初始化文档,

.bash_profile.profile等等。

例如,对.bash_profile中的EDITERTERM变量做了修改,

source执行脚本(调用了EDITERTERM变量)时,不用注销或重新启动(PC)。


Linux Command - source

标签:

原文地址:http://blog.csdn.net/xiaobin_hlj80/article/details/44925729

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!