微軟發布PowerShell 7.0,兼容性大升級,全平臺可用,開發人員:自7以后才是真·PowerShell
魚羊 發自 凹非寺
量子位 報道 | 公眾號 QbitAI
那個模糊了腳本和正經程序的邊界,讓一切皆有可能的PowerShell,7.0正式版發布啦。
新的語法糖,更好的兼容性,最重要的,是從.NET Core 2.x完全遷移到了3.1。
背后生態的升級,也意味著PowerShell 7比起它的老版本們,更具向后兼容性。
PowerShell的開發人員甚至表示:
PowerShell 7標志著Windows PowerShell最大化向后兼容的完成。我們認為PowerShell 7及其以后的版本才是真正的PowerShell。
和六代目一樣,PowerShell 7全平臺可用,無論你是Linux的忠實擁躉還是Mac愛好者,都可以像Windows用戶一樣,體驗微軟開源的風味。
話不多說,一起來看看PowerShell 7帶來了什么樣的新功能。
兼容性大升級
大版本更新,帶來了新的cmdlet和API,一批bug也得到了集中修復。
而最令人期待的,當然還是新功能:
- 用ForEach-Object -Parallel進行管道并行化
- 新的運算符:
- 三元運算符:a ? b : c
- 管道鏈運算符:|| 和 &&
- 空分配和合并運算符:?? 和 ??=
- 簡化的動態錯誤視圖和Get-Error命令行工具,可更輕松地調查錯誤
- 兼容性層,使用戶能夠在隱式Windows PowerShell會話中導入模塊
- 自動新版本通知
- 直接從PowerShell 7調用DSC資源的能力(實驗性)
更重要的一點是,從PowerShell 6.x版本升級到7.0版本,意味著.NET Core從2.x升級到了3.1。
.NET Core 3.1是2019年12月更新的.NET最新版本,也是最具向后兼容性的版本。這也就使得Windows PowerShell模塊的向后兼容性大大提高。包括Out-GridView和Show-Command這樣需要GUI功能的模塊,以及Windows附帶的許多角色管理模塊。
并且,PowerShell 7的操作系統支持列表相當可觀,包括Windows7、8.1和10(在x64上),幾乎所有的Windows Server版本,macOS和一眾Linux發行版。
完整列表如下:
Windows 8.1, and 10
Windows Server 2012, 2012 R2, 2016, and 2019
macOS 10.13+
Red Hat Enterprise Linux (RHEL) / CentOS 7
Fedora 30+
Debian 9
Ubuntu LTS 16.04+
Alpine Linux 3.8+
以及Debian和Ubuntu的ARM32、ARM64版本,以及ARM64 Alpine Linux。
什么是PowerShell
如果你還不太了解PowerShell,那么且聽我安利一發。
PowerShell是微軟開發的任務自動化和配置管理工具。不同于普通的Shell腳本語言,PowerShell背靠.NET這棵大樹,能直接調用.NET Framework平臺強大的功能。
如果跟知名的Unix Shell——Bash做個比較,Bash可以說是簡單粗暴型選手,交互全靠字符串,勝在語法精簡,速度很快,但也容易讓寫腳本的人抓狂。
△bash,圖源:TechTarget
而PowerShell作為面向對象的腳本語言,具有一致的語法結構,寫起腳本更為清晰。
△powershell,圖源:TechTarget
傳送門
GitHub地址:https://github.com/PowerShell/PowerShell
更新細則:https://docs.microsoft.com/zh-cn/powershell/scripting/whats-new/what-s-new-in-powershell-70?view=powershell-7
— 完 —
- 蘋果芯片主管也要跑路!庫克被曝出現健康問題2025-12-07
- 世界模型和具身大腦最新突破:90%生成數據,VLA性能暴漲300%|開源2025-12-02
- 谷歌新架構突破Transformer超長上下文瓶頸!Hinton靈魂拷問:后悔Open嗎?2025-12-05
- 90后華人副教授突破30年數學猜想!結論與生成式AI直接相關2025-11-26




