首页 文章

命令提示符和cmd之间有什么区别?

提问于
浏览
7

我有Windows 7,Windows 8和Windows 10系统,它们的行为类似 .

当我在开始菜单中键入命令提示符并按Enter键时,会出现一个 Headers 为命令提示符的窗口 . 我给它一个蓝色背景和一个绿色文本 . 当我在命令行中键入start,cmd或bat文件的名称时,它会打开一个 Headers 为cmd的窗口,我给出了黑色和绿色文本的背景 . 似乎颜色存储但是...嗯......

当我在Windows 10的开始菜单中键入cmd时,会出现一个 Headers 为"cmd"的窗口,但它会从“命令提示符”窗口中调出蓝色背景和绿色文本,但是从该窗口键入 cmd 将打开一个新的黑色和绿色样式 . 当我双击批处理文件时,它会打开一个 Headers 为命令提示符的窗口,其中包含不同的字体和带有白色文本的黑色背景 . 当我键入 command 时,它只打印DOS和版权 Headers ,但 start command 打开一个 Headers 为COMMAND.COM的窗口,其中包含不同的字体和带有白色文本的黑色背景 .

当键入 cmd /? 进入参数列表时,屏幕上会出现 . 其中一个是/ Q.它说它在新实例中关闭了echo . 当我在命令提示符或cmd中键入 cmd /Q 时,它会使用相同的 Headers 替换窗口,但使用黑色和绿色配色方案,并且不会关闭回声 . 当我键入 start cmd /q 时,发生了完全相同的事情,但'start cmd.exe /q'实际上产生一个错误,指出/ Q不是有效的开关 .

这真的只是我在这里遇到的问题的一小部分,我甚至无法开始整理它 . 如果那里的一些老兵知道明显的命令提示之间的微妙差异,以及调用它们的方式,我会很感激那个人为我排序那个烂摊子 .

2 回答

  • 6

    我将尽力解决一些困惑,但我不能做得很完美,因为微软已经确保无法彻底解决这些问题,并且他们改变了每个版本的Windows的混乱 . 因此,例如,我即将提供的一些信息可能不适用于Windows 8和Windows 10.但它确实适用于Windows 7 .

    “命令提示符”是Windows下控制台应用程序的正式名称 . “cmd.exe”(或只是“cmd”)是同一应用程序的可执行二进制文件的名称 .

    Windows在 HKEY_CURRENT_USER\Console 下的注册表中存储命令提示符的默认设置 . 当一个新的命令提示符打开时,Windows将获取该命令提示符的 the window title ,并尝试查看 HKEY_CURRENT_USER\Console\ 下是否有一个具有该名称的子项 . 如果找到一个子键,它会从中读取值 . 如果找不到子项,则会读取它在 HKEY_CURRENT_USER\Console 中找到的默认值 .

    例如,在我的系统上,存在一个 HKEY_CURRENT_USER\Console\MySQL 5.6 Command Line Client - Unicode 密钥,很可能是因为MySQL安装程序创建了此密钥,因此它们的命令提示符与命令提示符的其他实例看起来不同 . 当然,为了使其工作,启动其命令提示符的快捷方式必须指定"MySQL 5.6 Command Line Client - Unicode"作为命令提示符的窗口 Headers .

    因此,如果您看到具有不同样式的命令提示,那可能是因为您在 HKEY_CURRENT_USER\Console\ 下有条目 . 事实上它似乎没有任何意义,这是因为所选的子键取决于命令提示符窗口的 Headers ,这可能因启动方式而异 .

  • 9

    命令提示符只是cmd.exe命名为“命令提示符”的快捷方式:

    enter image description here

    样式只是具有自己属性的快捷方式的结果 . 您还可以使用cmd.exe的其他快捷方式,每个快捷方式也可以有自己的样式选项 .

    至于窗口 Headers ,cmd只是将窗口 Headers 设置为启动cmd的文件名 . 如果您创建cmd.exe的快捷方式并将其命名为“my_shell” . 您将获得一个 Headers 为“my_shell”的cmd窗口 .

相关问题