cmd是和powershell都可以做命令行交互,批處理和powershell腳本功能也相當(dāng)。
我不知道你怎么理解cmd,但下面是powershell是基于.net的,只要你足夠了解.net,你可以使用她做任何你想做的事情。
Windows PowerShell 是專為系統(tǒng)管理員設(shè)計(jì)的新 Windows 命令行 shell。Windows PowerShell 包括交互式提示和腳本環(huán)境,兩者既可以獨(dú)立使用也可以組合使用。
與接受和返回文本的大多數(shù) shell 不同,Windows PowerShell 是在 .NET Framework 公共語言運(yùn)行時(shí) (CLR) 和 .NET Framework 的基礎(chǔ)上構(gòu)建的,它接受和返回 .NET Framework 對(duì)象。環(huán)境中的這一根本更改帶來了管理和配置 Windows 的全新工具和方法。
Windows PowerShell 引入了 cmdlet(讀作“command-let”)的概念,這是內(nèi)置到 shell 中的一個(gè)簡單的單一功能命令行工具。可以分別使用每個(gè) cmdlet,但是組合使用這些簡單的工具執(zhí)行復(fù)雜任務(wù)時(shí)才發(fā)揮其作用。Windows PowerShell 包括一百多個(gè)基本的核心 cmdlet,您可以編寫自己的 cmdlet 并與其他用戶共享它們。
與許多 shell 一樣,Windows PowerShell 為您提供了對(duì)計(jì)算機(jī)上文件系統(tǒng)的訪問。此外,使用 Windows PowerShell 提供程序還可以訪問其他數(shù)據(jù)存儲(chǔ),如注冊(cè)表和數(shù)字簽名證書存儲(chǔ),就像訪問文件系統(tǒng)一樣容易。
簡單的說,Powershell是cmd的超集,換句話說,cmd能做的事情,Powershell都能做,但是Powershell還能額外做許多cmd不能做的活。
主要是系統(tǒng)管理功能、腳本語言和在線幫助更強(qiáng)大,你確實(shí)可以只把它當(dāng)成cmd來用,也可以學(xué)和用得更深
powershell的優(yōu)點(diǎn)
沒有做不到,只有想不到。用 PowerShell 甚至可以 Load C/C++ 寫的 dll,然后執(zhí)行里面的代碼,COM 就不說了。跑題了,題主問不同,竊以為 PowerShell 和 cmd 最大的不同,并且也是和其它 *nix Shell 最大的不同在于 PowerShell 的 pipe 傳遞的是 .net object,而不是 raw 字符串,于是這就打開了一扇神奇的大門,因?yàn)?PowerShell 的一切組件都可以和諧地共存,彼此不用互相猜忌,不用猜你喂給我的數(shù)據(jù)合不合法,也不用擔(dān)心我喂給你的參數(shù)格式對(duì)不對(duì)。大家共享一個(gè) CLR,擁有豐富的 metadata,自由自在地在 .net 的世界里徜徉和探索。順帶宣傳一下 https://chocolatey.org/ ,Windows 的 apt-get,基于 PowerShell
PowerShell為什么強(qiáng)大
微軟是一個(gè)很”低調(diào)”的公司,取名為微軟,感覺有“微微軟下去”的意思,這是個(gè)玩笑了。windows 操作系統(tǒng) 和office辦公軟件,如此之優(yōu)秀,微軟也沒敢命名為PowerOS 和 PowerOffice,但是在Monad(PowerShell的前身)發(fā)布后的第二年(2006年),微軟就直接就發(fā)布了Windows PowerShell 1.0,并且”大言不慚“地命名為PowerShell,這也有點(diǎn)太不淡定了。
今天我根據(jù)自己的體驗(yàn)來稍微總結(jié)一下為什么PowerShell如此之強(qiáng)大。
新聞熱點(diǎn)
疑難解答
圖片精選