“DOS”有外壳吗?

Kor*_*gay 3 linux terminal bash shell command-line

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

难道DOS有一个壳,就像Linux中的bash的?

这是 DOS shell,一个显示命令行的 shell?

FreeDOS 截图

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

phu*_*clv 5

是的。shell 由变量 指向COMSPEC。例如,在MS-DOS的默认外壳COMMAND.COM被存储在系统驱动的根文件夹

COMSPECorComSpec是 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
Run Code Online (Sandbox Code Playgroud)

如上所述,COMMAND.COM它是默认的 shell,但您可以随时更改它和/或在CONFIG.SYSusingSHELLSHELLHIGH

SHELL=C:\DOS\COMMAND.COM C:\DOS /E:512 /P
Run Code Online (Sandbox Code Playgroud)

例如,FreeDOS 不会将 shell 存储在根级别,而是将其存储在自己的目录中

FreeDOS 外壳

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

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

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