“DOS” 有 shell 吗?

“DOS” 有 shell 吗?

我一直在阅读有关 shell、终端、bash 的帖子,但我对这些术语越来越困惑。

操作系统有一个 shell,像 Linux 中的 bash 吗?

这是 DOS shell 吗?就是显示命令行的 shell?

FreeDOS 屏幕截图

另外在这种情况下,如果我理解正确的话,终端是键盘和显示器?

答案1

是的。DOS 中的 shell 是COMMAND.COM程序。

答案2

是的。shell 由变量指向COMSPEC。例如在 MS-DOS 中默认 shellCOMMAND.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 存储在根目录,而是存储在自己的目录中

FreeDOS 外壳

已经生成了许多 DOS 的替代 shell,以添加许多有用的功能,如自动完成、ANSI 命令……最著名的是4DOS

4DOS 是 command.com 的替代品,command.com 是大多数 DOS 版本中都包含的命令处理器,但比这个弱小的程序强大得多、灵活得多。经过多年的商业成功,4DOS 现在由其作者、JP Software 的 Rex Conn 在其下载页面上免费提供。它不受官方支持,但支持论坛通常会尝试回答您的问题。

https://www.4dos.info/4dinfo.htm

答案3

Shell 只是一种访问操作系统功能/服务的方式,可以是命令行,即基于文本,也可以是基于 GUI。因此,DOS 的 Shell 是其命令行界面 (CLI) 和命令解释器 (command.com),显示标准 DOS 提示符。Shell 通常在文本终端上运行,从键盘接受数据并在显示器(以及其他 I/O 设备)上显示输出。

1

相关内容