Unix 操作系统有多种 shell,它们提供了不同的特性和比彼此更好的语法。 Unix 操作系统的两个最常见的 shell 是 ash 和 bash。
两者在操作系统中具有不同的用法和功能,并以独特的形式与设备交互。
关键精华
- Ash 是一个轻量级的 Unix shell,而 Bash 是一个功能更丰富的 shell。
- Bash 提供了比 Ash 更高级的脚本功能。
- Ash 更适用于资源有限的环境,而 Bash 则因其广泛的特性和兼容性而被广泛使用。
阿什对巴什
和灰的区别 揍 是 Ash 是可移植的,而 Bash 不是最可移植的 Unix shell。 Ash 不提供任何附加功能,例如命令历史记录,而 揍 提供额外的功能,如命令历史。
Ash 于 30 年 1989 月 XNUMX 日由 Kenneth Almquist 发射。 Unix shell 名称的来源是 Almquist Shell。 它也被其他术语称为“sh”或“a shell”。
Ash 的发布平台是跨平台的。 它不是默认的 Unix shell。
另一方面,Bash 于 8 年 1989 月 XNUMX 日由 Brain Fox 推出。
Unix shell 名称的来源是 Bourne Again Shell 的首字母缩写。 启动 Bash 的平台是 GNU。 它是一个默认的 Unix shell。
对比表
比较参数 | 灰色 | 揍 |
---|---|---|
壳牌的原名 | 阿姆奎斯特壳牌 | 再次伯恩壳 |
开发工具 | Ash 由 Kenneth Almquist 开发 | Bash 由 Brian Fox 开发 |
脚本类型 | Ash 的 shell scripting 是可以在任何 shell 中完成的脚本 | Bash 脚本是一种专门为 bash 编写的脚本 |
易于访问 | 可访问性相对不太容易 | 可访问性非常容易 |
默认外壳 | Ash 不是默认的 Unix shell | Bash 是默认的 Unix shell |
灰烬是什么?
Ash 是一个轻量级的 Unix shell,最初被称为 Almquist Shell。 它也有其他名称,如“a Shell”或“Sh”。
Unix shell 的最初开发者是 Kenneth Almquist。 外壳是在 1980 年代后期开发的。 该 shell 的发布最初是作为 System V.4 的克隆,后者也是 Bourne shell 的变体。
Almquist Shell 或 Ash 的第一个版本发布于 30 年 1989 月 XNUMX 日。该 shell 是用 C 语言编写的。 它有一个类似于 Unix 的操作系统。
shell 执行的平台是跨平台的。 Unix shell 的初始版本是通过发布到 新闻组 新闻组称为 comp.sources.Unix。
审核和批准由 Rich Salz 完成。
Unix shell Ash 的描述是作为 System V shell 的一个实现给出的,它具有现有 shell 的大部分功能,还为用户提供了额外的功能。
Ash 是一个几乎兼容的、小型的、非常快速的 Unix shell,符合 POSIX 的标准规范。
Ash 的初始变体没有许多重要功能,如命令历史机制或行编辑功能。
原开发者并不觉得这些功能可以移到终端的驱动程序中。
但 Ash 的当前变体提供了所有这些功能,甚至更多。 ash 的原始版本也产生了 Myriad Forks。
什么是巴什?
Bash 是一种 Unix shell,被设计为 GNU 项目的免费软件,可以替代 Bourne shell。 它是一种命令语言,最初由 Brian Fox 编写。
Unix shell 于 8 年 1989 月 5.1.16 日发布,发布版本为 5.2。 Bash 的预览版是 XNUMX- alpha。
Unix shell 的使用已成为许多 Linux 发行版的默认登录 shell。 通过为 Linux 设计的 windows 子系统,bash 的可用性也类似于 Windows 10。
Unix shell 作为默认用户 shell 的用法是在 Solaris 11 中。Bash 作为默认 shell 的其他应用在 2019 年 macOS Catalina 之前发布的 Apple macOS 版本中观察到。
Unix shell bash 是用 C 语言编写的。 shell 中使用的操作系统有 macOS、类 Unix 和 Windows。 用于 bash 的平台是 GNU。
它有多种语言版本,因此通常被称为多语言。 Bash 也是一个命令处理器,因为它可以在文本窗口中运行命令以引发操作。
从文件中读取和执行命令在 bash 中也可用,这个过程被称为 shell 脚本。
Bash 还支持吞噬文件名、文档、迭代、管道、条件测试中使用的控制结构、命令替换以及变量。
还有一些基本功能被认为是从其他 Unix shell 复制而来的。 Bash 还为用户提供了大量的扩展。
Ash 和 Bash 之间的主要区别
- Ash 被认为是 Bash 的前身,而 Bash 被认为是 Ash 的继承者。
- Ash 的功能非常少,而 Bash 的功能相对较多并且可以升级。
- Ash 不支持作业控制,而 Bash 支持作业控制。
- Ash 是一个有效的 POSIX shell,而 Bash 是一个无效的 POSIX shell。
- Ash 仅以原始语言提供,而 Bash 以该语言的扩展版本提供
- https://www.sciencedirect.com/science/article/pii/S0960852415012857
- https://www.sciencedirect.com/science/article/pii/S0304389411000677
最后更新时间:14 年 2023 月 XNUMX 日
Sandeep Bhandari 拥有塔帕尔大学计算机工程学士学位(2006 年)。 他在技术领域拥有 20 年的经验。 他对各种技术领域都有浓厚的兴趣,包括数据库系统、计算机网络和编程。 你可以在他的网站上阅读更多关于他的信息 生物页面.