source命令与shell scripts的区别

行如下命令./set_env.sh设置相关环境变量时发现:当此命令运行结束后,脚本中所设置的环境变量仍为空,感觉此脚本没有执行;运行. set_env.sh脚本执行成功。通过上网查询,发现是由于source命令与shell scripts的作用范围不同而导致的。

source命令与shell scripts的区别:

source在当前bash环境下执行命令,而scripts是启动一个子shell来执行命令。这样如果把设置环境变量(或alias等等)的命令写进scripts中,就只会影响子shell,无法改变当前的BASH,所以通过文件(命令列)设置环境变量时,要用source 命令。

 

 

 

source命令简介:

source命令也称为“点命令”,也就是一个点符号(.)。source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。

用法: 

source filename 或 . filename

你可能感兴趣的:(shell,脚本,bash)