许多传闻称MS-DOS命令提示符将要为 PowerShell 让路,这类“新闻”让大量依赖于Cmd.exe的发烧友、开发者、以及企业客户感到惶恐。为了安抚大家的情绪,微软高级项目经理Rich Turner特地在官方博客撰文澄清,解释天不会很快就塌下来。这一猜测最早出现在Windows 10 Insider build 14971发布之后,因为一些补丁注释被断章取义。
“PowerShell只是个壳子:为了给重度用户提供最佳、最前沿的命令行体验,PowerShell 现已取代命令提示符,成为了文件资源管理器事实上的命令窗口……”Computer World误解了这一说法,结果导致大家都以为PowerShell真要把Cmd.exe给赶尽杀绝了。万幸的是,Turner已经作出了澄清 —— “作为Windows中的一项重要特性,Cmd 不会轻易狗带”。
他解释到:“许多基于 Windows 打造和测试的自动化系统,都用到了已被服务行业运用多年的大量 Cmd 脚本。没有它,我们甚至难以完善 Windows 自身”。
● 和资源管理器、Edge / IE 浏览器等程序一样,Cmd 是 Windows 中最常用到的可执行文件之一。
● 我们有许多客户和合作伙伴完全依赖于 Cmd,虽然怪癖,但这确是它们的立身之本。
此外,对于有些人将命令提示符(Cmd)完全等同于已经存在了数十年的 MS-DOS(一个简单的命令行操作系统)一事,Turner 也特地挑明了两者的区别,其指出:
● MS-DOS 是采用 x86 汇编打造的,并且不会完全移植支持未来的 CPU;
● 相比之下,Cmd 是一款完全用 C 语言编写的纯 32 位应用(Win32 app),可以在 Windows NT 和当前的 Windows 10 操作系统上实现更多功能。
有趣的是,源自 NT 的 32 位版本的 Windows 中包含了一个名叫“command.com”的附加 shell:
● 通过 Virtual 8086 模式和某些遗技,它可以在 Windows NT DOS 虚拟机(NTVDM)中运行许多 MS-DOS 脚本和古老的 16 位 应用程序。
● 不过 64 位版本的 Windows 操作系统中并未包含 command.com 或 NTVDM 。
与Cmd相比,PowerShell更加年轻和功能强大。未来属于PowerShell,但多数Windows build系统仍将继续使用Cmd环境。
Turner表示:“如果我们将 Cmd 踹下马,肯定会伤了某些人的心”。(cnbeta)
新闻热点
疑难解答