这是一个非常普遍的问题,但我很难找到解释。我的问题是:操作系统 GUI 是否有不同于命令行解释器的 shell?当我在 Wikipedia 页面上阅读有关 shell 的内容时,它在 Microsoft Windows 部分下说“Microsoft Windows 中的大多数操作系统 shell 不是命令行解释器”。我了解到,在当今时代,大多数人使用 GUI 与操作系统交互,并且如果操作系统有 GUI,那么 GUI 就是操作系统的主要 shell。
这就是我感到困惑的地方。例如,在 Windows 10 上,您可以访问命令行界面并根据需要向操作系统输入命令。带有 GUI 的操作系统上的命令行界面是否具有与其各自的 GUI 相同的 shell?
答案1
一些 Windows 传统人士使用术语“shell”来表示操作系统的用户界面,无论是图形界面还是命令行界面。
因此在 Windows 中,GUI是贝壳”。
其中一些可以追溯到旧的 MS-DOS 半图形(文本模式图形)文件管理器应用程序“DOS Shell”,它试图保护用户不必使用实际的 DOS 命令提示符。因此,如果这个文件管理器应用程序是 DOS 的“外壳”,那么后来的 Windows 文件管理器、程序管理器、进程管理器、桌面环境和 GUI 系统也都是操作系统的“外壳”,呈现出更令人愉悦的用户界面。
在 Unix 世界中,命令行解释器是 shell,而 GUI/窗口/桌面环境从不被视为任何类型的 shell。macOS 术语遵循此模型。Finder 不是 shell:bash 是 shell。
具有 GUI 的操作系统上的命令行界面是否具有与其各自的 GUI 相同的 shell?
我认为,在 MS Windows 术语中,命令行解释器是 shell 的一部分,就像 Windows 资源管理器和“开始”菜单是 shell 的一部分一样。只需将“shell”替换为“用户界面”,您就会明白这个术语在某些 Windows 学者中的使用方式。命令行用户界面是操作系统用户界面的一部分吗?是的。那么它就是 shell 的一部分。