許多傳聞稱MS-DOS命令提示符將要為 PowerShell 讓路,這類“新聞”讓大量依賴于Cmd.exe的發(fā)燒友、開發(fā)者、以及企業(yè)客戶感到惶恐。為了安撫大家的情緒,微軟高級項(xiàng)目經(jīng)理Rich Turner特地在官方博客撰文澄清,解釋天不會很快就塌下來。這一猜測最早出現(xiàn)在Windows 10 Insider build 14971發(fā)布之后,因?yàn)橐恍┭a(bǔ)丁注釋被斷章取義。
“PowerShell只是個(gè)殼子:為了給重度用戶提供最佳、最前沿的命令行體驗(yàn),PowerShell 現(xiàn)已取代命令提示符,成為了文件資源管理器事實(shí)上的命令窗口……”
Computer World誤解了這一說法,結(jié)果導(dǎo)致大家都以為PowerShell真要把Cmd.exe給趕盡殺絕了。萬幸的是,Turner已經(jīng)作出了澄清 —— “作為Windows中的一項(xiàng)重要特性,Cmd 不會輕易狗帶”。
他解釋到:“許多基于 Windows 打造和測試的自動(dòng)化系統(tǒng),都用到了已被服務(wù)行業(yè)運(yùn)用多年的大量 Cmd 腳本。沒有它,我們甚至難以完善 Windows 自身”。
● 和資源管理器、Edge / IE 瀏覽器等程序一樣,Cmd 是 Windows 中最常用到的可執(zhí)行文件之一。
● 我們有許多客戶和合作伙伴完全依賴于 Cmd,雖然怪癖,但這確是它們的立身之本。
此外,對于有些人將命令提示符(Cmd)完全等同于已經(jīng)存在了數(shù)十年的 MS-DOS(一個(gè)簡單的命令行操作系統(tǒng))一事,Turner 也特地挑明了兩者的區(qū)別,其指出:
● MS-DOS 是采用 x86 匯編打造的,并且不會完全移植支持未來的 CPU;
● 相比之下,Cmd 是一款完全用 C 語言編寫的純 32 位應(yīng)用(Win32 app),可以在 Windows NT 和當(dāng)前的 Windows 10 操作系統(tǒng)上實(shí)現(xiàn)更多功能。
有趣的是,源自 NT 的 32 位版本的 Windows 中包含了一個(gè)名叫“command.com”的附加 shell:
● 通過 Virtual 8086 模式和某些遺技,它可以在 Windows NT DOS 虛擬機(jī)(NTVDM)中運(yùn)行許多 MS-DOS 腳本和古老的 16 位 應(yīng)用程序。
● 不過 64 位版本的 Windows 操作系統(tǒng)中并未包含 command.com 或 NTVDM 。
與Cmd相比,PowerShell更加年輕和功能強(qiáng)大。未來屬于PowerShell,但多數(shù)Windows build系統(tǒng)仍將繼續(xù)使用Cmd環(huán)境。
Turner表示:“如果我們將 Cmd 踹下馬,肯定會傷了某些人的心”。(cnbeta)