windows PowerShell 7來臨,新功能給人印象深刻


windows PowerShell 7來臨,新功能給人印象深刻


PowerShell是Windows和Windows Server的自動化平臺和腳本語言,具有命令行界面,可為IT專業人員提供更多配置微軟Windows系列操作系統的機會,是一種通用的管理工具,可讓用戶簡化對系統的管理。與其他基於文本的外殼程序不同,PowerShell利用.NET Framework的功能,可提供豐富的對象和大量內置功能來控制Windows環境。

近日,微軟發佈了PowerShell 7,這是其跨平臺PowerShell核心自動化工具和配置框架的最新版本。這次更新帶來了一些重大的變化、新的功能和改進的向後兼容性。展望未來,PowerShell 7將成為“一個真正的PowerShell”,以取代之前Windows PowerShell和PowerShell核心之間的分層。

此版本中最大的更改之一是從.NET Core 2.x升級到了3.1版。微軟在發佈該版本的博客文章中說:“.NET Core 3.1帶來了許多.NET Framework API,從而使它們與現有Windows PowerShell模塊的向後兼容性大大提高。” “這包括Windows上許多需要GUI功能的模塊,例如Out-GridView和Show-Command,以及Windows中附帶的許多角色管理模塊。”

windows PowerShell 7來臨,新功能給人印象深刻


PowerShell安裝目錄改變

在安裝PowerShell 7時,它將安裝到新目錄中,並與PowerShell 5.1一起運行。如果要從PowerShell Core 6.x升級,將覆蓋PowerShell 6目錄,並刪除所有不必要的文件。以下是安裝目錄列表:

將PowerShell 7安裝到%programfiles%\\PowerShell\\7目錄

%programfiles%\\PowerShell\\7 文件夾已添加到 $env:PATH

PowerShell 7安裝程序包將升級PowerShell Core 6.x的早期版本:

Windows:%programfiles%\\PowerShell\\6 替換為 %programfiles%\\PowerShell\\7

Linux: /opt/microsoft/powershell/6替換為 /opt/microsoft/powershell/7

macOS: /usr/local/microsoft/powershell/6 替換為 /usr/local/microsoft/powershell/7

PowerShell 7中的新功能

  • 管道並行化
  • 新的運算符
  • ConciseView和Get-Error cmdlet
  • 自動新版本通知
  • 直接從PowerShell 7調用DSC資源
  • 兼容層

在測試實際代碼之前,請務必確保檢查“環境變量”。

windows PowerShell 7來臨,新功能給人印象深刻


1、管道並行化

現在,使用ForEach-Object-Parallel時,可以並行執行或處理對象,而不是使用sequence方法。此方法可以在不到10秒的時間內卸下三個WIM映像,而不是按順序運行時的近25秒。下面是它的示例代碼:

Get-WindowsImage -Mounted | foreach -Parallel {Measure-Command {Dismount-WindowsImage -Discard -Path $_.Path}}

2、新運算符

有三個新的三元運算符:a?b:c,管道鏈運算符;||和&&和Null條件運算符;??和??=。 它們的作用類似於一個簡化的if-else語句,利用它們可以使編寫代碼變得容易,而不是一直使用If-else循環。

3、ConciseView和Get-Error cmdlet

ConciseView是一個用戶可選擇的視圖,它是PowerShell 7的默認視圖。如果錯誤不是來自腳本,將收到一個單行錯誤。如果來自腳本或存在解析錯誤,將收到一條多行錯誤消息以及一個指針,顯示錯誤發生在哪一行。

windows PowerShell 7來臨,新功能給人印象深刻


然後有一個新的cmdlet Get Error,可以幫助用戶在需要時獲得錯誤的詳細視圖。它可以顯示最後發生的錯誤的完整詳細信息,包括內部異常。

$Error | Get-Error

Get-Error -Newest 3 # Displays the last three errors that occurred in the session

4、自動新版本通知

從PowerShell 7開始,系統將每天檢查一次更新,如果有新版本,系統將通知用戶。此信息僅在後續會話開始時顯示。

PowerShell更新有三個標誌:

Default:GA、預覽和RC版本

Off:關閉更新通知功能

LTS:只通知長期服務(LTS)GA版本的更新

如果要在PowerShell 7中關閉更新通知,請在PowerShell窗口中執行以下命令:

$Env:POWERSHELL_UPDATECHECK = 'Off'

5、直接從PowerShell 7調用DSC資源

Invoke-DscResource cmdlet運行指定的PowerShell所需狀態配置(DSC)資源的方法,這是一個實驗功能。

使用此cmdlet,配置管理產品可以通過使用DSC資源來管理Windows或Linux。當DSC引擎在啟用調試的情況下運行時,此cmdlet還可啟用資源調試。

6、兼容層

它允許PowerShell用戶在隱式Windows PowerShell會話中導入模塊。使用此功能,用戶能夠在遠程計算機上將真實命令作為會話使用,並將結果返回到本地會話。現在它支持導入模塊,用戶可以在遠程計算機上運行這些模塊。

PowerShell 7是跨平臺的,它支持Windows,macOS和各種Linux版本,PowerShell是Linux和macOS上都可用的開源軟件。很高興在PowerShell 7中看到如此多的新功能,希望微軟加大開發力度,開發出功能更強大的版本。

用戶可以在GitHub上下載和獲取PowerShell 7最新版本的更多詳細信息。



1.頭條號【微課傳媒】專注軟件分享,如果你喜歡玩軟件,歡迎關注、評論、收藏、轉發。

2.在學習中有什麼問題,歡迎與我溝通交流,今日頭條號搜索【微課傳媒】,我在這裡等你喲!


分享到:


相關文章: