Linux Command - source

    我们知道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)。


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。