2020年12月

Linux source 命令

source 是 shell 内置的命令, 它加载给的函数文件, 在当前shell/命令行窗口执行.
格式是:
source filename [arguments]

文件名查找路径根据 $PATH 去查.

它区别于直接执行 sh filename [arguments]的重要区别是: source 在当前 shell 执行, 可能改变当前 shell 的某些全局状态或特性. 而一般的 sh 或 直接 ~$ <可执行文件> 的方式是新开一个 shell 去执行, 也就是它是一个新的 process.

eric@tianxiaohui.com ~$ type source
source is a shell builtin

source 等同于 . 所以:

source script == . script
./script # 新开一个 shell 执行这个 script 脚本