unix/linux source 命令,其发展历程详细时间线、由来、历史背景

追本溯源,探究技术的历史背景和发展脉络,能够帮助我们更深刻地理解其设计哲学和存在的意义。source 命令(或者说它的前身和等效形式)的历史,与 Unix Shell 本身的发展紧密相连。

让我们一起踏上这段追溯之旅,探索 source 命令的由来和发展历程。

早期 Unix Shell 与命令执行 (20世纪70年代初 - 中期)

在 Unix 的黎明时期,第一个重要的 Shell 是 Thompson Shell (sh),由 Ken Thompson 在贝尔实验室开发,大约在 1971 年左右。

  • 基本的命令执行: Thompson Shell 已经具备了执行外部命令(通过 forkexec 系统调用创建新进程)和内置命令的能力。
  • 脚本执行: 它可以执行包含一系列命令的脚本文件。然而,此时的脚本执行方式,主要是通过创建一个新的 Shell 进程来解释和运行脚本中的命令。这意味着脚本对环境的修改(如变量设置)在脚本结束后就会丢失,无法影响父 Shell。
  • “.” 命令的雏形: 此时,Thompson Shell 还没有明确的 source 命令。但是,引入命令来执行脚本内命令并在当前上下文中生效的概念,其需求已经开始显现。例如,登录时需要执行一些初始化命令来设置环境。

Bourne Shell (sh) 的诞生与 “.” 命令 (1977 - 1979年)

真正的转折点来自于 Bourne Shell (sh),由 Stephen Bourne 在贝尔实验室开发,并在 Unix Version 7 (大约 1979 年) 中作为默认 Shell 发布。Bourne Shell 带来了许多至今仍在使用的重要特性,其中就包括了我们今天讨论的主角—— . (点) 命令

  • source 的前身/等效形式:. (点命令)
    • 时间点: 大约在 1977-1979年 间,随着 Bourne Shell 的开发和完善,. 命令被引入。
    • 由来与历史背景:

你可能感兴趣的:(命令行工具,linux,unix,bash)