我一直在阅读有关 shell、终端、bash 的帖子,但我对这些术语越来越困惑。
做操作系统有一个 shell,像 Linux 中的 bash 吗?
这是 DOS shell 吗?就是显示命令行的 shell?
另外在这种情况下,如果我理解正确的话,终端是键盘和显示器?
答案1
是的。DOS 中的 shell 是COMMAND.COM
程序。
答案2
是的。shell 由变量指向COMSPEC
。例如在 MS-DOS 中默认 shell是COMMAND.COM
存储在系统驱动器的根文件夹中
COMSPEC
或者ComSpec
是 DOS、OS/2 和 Windows 中使用的环境变量之一,通常指向命令行解释器,默认情况下,DOS 中的解释器为 COMMAND.COM,OS/2 和 Windows NT 中的解释器为 CMD.EXE
即使 DOS 不可用,您也可以在 Windows 中看到该变量,因为它可用于从可执行文件或脚本运行 shell 命令
C:\Users\user>set comspec
ComSpec=C:\Windows\system32\cmd.exe
如上所述,COMMAND.COM
是默认 shell,但您可以随时更改它和/或添加其他参数CONFIG.SYS
使用SHELL
或者SHELLHIGH
SHELL=C:\DOS\COMMAND.COM C:\DOS /E:512 /P
例如,FreeDOS 并不将 shell 存储在根目录,而是存储在自己的目录中
已经生成了许多 DOS 的替代 shell,以添加许多有用的功能,如自动完成、ANSI 命令……最著名的是4DOS
4DOS 是 command.com 的替代品,command.com 是大多数 DOS 版本中都包含的命令处理器,但比这个弱小的程序强大得多、灵活得多。经过多年的商业成功,4DOS 现在由其作者、JP Software 的 Rex Conn 在其下载页面上免费提供。它不受官方支持,但支持论坛通常会尝试回答您的问题。