bash和sh在功能上有什么显著差异?

2026-04-02 12:450阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计793个文字,预计阅读时间需要4分钟。

bash和sh在功能上有什么显著差异?

什么是sh?

sh(或Shell命令语言)是一种由POSIX标准描述的编程语言。它有许多实现(如ksh88、Das等)。

什么是sh?sh(或Shell命令语言)是一种由POSIX标准描述的编程语言。它有许多实现(ksh88,Das 什么是sh?

sh(或 Shell 命令语言)是一种由POSIX 标准描述的编程语言。它有许多实现(ksh88,Dash,…)。Bash 也可以被认为是sh(见下文)的一种实现。

因为sh是规范,而不是实现,/bin/sh是大多数 POSIX 系统上实际实现的符号链接(或硬链接)。

什么是Bash?

Bash 最初是一个sh兼容的实现(尽管它比 POSIX 标准早了几年),但随着时间的推移,它已经获得了许多扩展。许多这些扩展可能会改变有效 POSIX shell 脚本的行为,因此 Bash 本身并不是一个有效的 POSIX shell。相反,它是 POSIX shell 语言的一种方言。

Bash 支持--posix开关,这使得它更符合 POSIX。如果调用为sh.

sh = bash?

很长一段时间以来,/bin/sh用于指向/bin/bash大多数 GNU/Linux 系统。因此,忽略两者之间的差异几乎是安全的。但这种情况最近开始发生变化。

阅读全文

本文共计793个文字,预计阅读时间需要4分钟。

bash和sh在功能上有什么显著差异?

什么是sh?

sh(或Shell命令语言)是一种由POSIX标准描述的编程语言。它有许多实现(如ksh88、Das等)。

什么是sh?sh(或Shell命令语言)是一种由POSIX标准描述的编程语言。它有许多实现(ksh88,Das 什么是sh?

sh(或 Shell 命令语言)是一种由POSIX 标准描述的编程语言。它有许多实现(ksh88,Dash,…)。Bash 也可以被认为是sh(见下文)的一种实现。

因为sh是规范,而不是实现,/bin/sh是大多数 POSIX 系统上实际实现的符号链接(或硬链接)。

什么是Bash?

Bash 最初是一个sh兼容的实现(尽管它比 POSIX 标准早了几年),但随着时间的推移,它已经获得了许多扩展。许多这些扩展可能会改变有效 POSIX shell 脚本的行为,因此 Bash 本身并不是一个有效的 POSIX shell。相反,它是 POSIX shell 语言的一种方言。

Bash 支持--posix开关,这使得它更符合 POSIX。如果调用为sh.

sh = bash?

很长一段时间以来,/bin/sh用于指向/bin/bash大多数 GNU/Linux 系统。因此,忽略两者之间的差异几乎是安全的。但这种情况最近开始发生变化。

阅读全文