为什么命令“source”有这个名字?

为什么命令“source”有这个名字?

我想知道为什么有一个命令从当前 shell 中的文件执行命令被命名source。我看不出两者之间的关系在当前 shell 中运行命令以及英文单词的意思来源。这个名字背后有什么历史吗?

答案1

shell 的用途是读取命令并执行它们,无论是交互方式还是来自脚本。在这种情况下,我一直认为source指定 shell 应执行的命令的源(完成后恢复到当前源)。

Bill Joy(他引入source了 C shell)定义了命令因此:

来源命令使 shell 从指定文件中读取命令。它对于读取文件最有用,例如.cshrc改变它们之后。

答案2

Lexico,牛津词典网站:

来源

动词 [带宾语]

  1. 从特定来源获取。

这不正是这个命令正在做的事情吗?从特定文件获取变量、别名和函数定义以及其他 shell 设置?

相关内容