当前位置: 技术问答>linux和unix
为什么source /etc/profile之后,环境变量没有被删除
来源: 互联网 发布时间:2017-04-08
本文导语: 我在/etc/profile文件最后加入了一行 export PATH=$PATH:/usr/local/arm/4.4.3/bin 然后,source /etc/profile,arm-linux-gcc生效。 然后我把/etc/profile中删掉 export PATH=$PATH:/usr/local/arm/4.4.3/bin 然后,再次source /etc/profile 然后,echo $PATH竟...
我在/etc/profile文件最后加入了一行
然后,source /etc/profile,arm-linux-gcc生效。
然后我把/etc/profile中删掉
然后,再次source /etc/profile
然后,echo $PATH竟然还包括/usr/local/arm/4.4.3/bin
which arm-linux-gcc竟然也还能找到,为什么呢?
export PATH=$PATH:/usr/local/arm/4.4.3/bin
然后,source /etc/profile,arm-linux-gcc生效。
然后我把/etc/profile中删掉
export PATH=$PATH:/usr/local/arm/4.4.3/bin
然后,再次source /etc/profile
然后,echo $PATH竟然还包括/usr/local/arm/4.4.3/bin
which arm-linux-gcc竟然也还能找到,为什么呢?
|
soruce命令是在当前 shell 中执行一个文件中的命令;
第一次设置环境变量,由于export写在配置文件里,source时执行export命令,环境变量生效;
第二次取消环境变量的设置,由于配置文件里没有取消上一次设置的环境变量的命令,所以上次设置的变量依然有效;
我是这样理解的
第一次设置环境变量,由于export写在配置文件里,source时执行export命令,环境变量生效;
第二次取消环境变量的设置,由于配置文件里没有取消上一次设置的环境变量的命令,所以上次设置的变量依然有效;
我是这样理解的
|
重启就删除了。原来的PATH不会变。
或者重新设置
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin #不要加:$PATH,否则也不会删除。
或者重新设置
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin #不要加:$PATH,否则也不会删除。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。