檢閱 Windows PowerShell 中的 PowerShellGet 模組

已完成

PowerShellGet 模組包含 Cmdlet,可用於存取和發佈 PowerShell 資源庫中的專案。 此課程模組是在 Windows Management Framework 5.0 中引進的,包含在 Windows 10 和 Windows Server 2016 中。 您可以升級舊版 Windows 作業系統,以包含 Windows Management Framework 5.0 或更新版本,進而取得 PowerShellGet 模組。 或者,如果您無法更新為 Windows Management Framework 5.0,PowerShellGet 有一個 .msi 安裝程式,您可以在具有 Windows PowerShell 4.0 的系統上使用。

當您第一次在 PowerShellGet 模組中使用 Cmdlet 時,系統會提示您安裝 NuGet 提供者。 NuGet 是套件管理員,可在 Windows 上取得及安裝套件。 PowerShellGet 模組中的 Cmdlet 會使用 NuGet 中的功能來與PowerShell 資源庫互動。

下表列出最常用來在 PowerShell 資源庫中尋找內容的兩個 Cmdlet。

表 1:用來在 PowerShell 資源庫中尋找內容的 Cmdlet

Cmdlet 描述
Find-Module 使用此 Cmdlet 在 PowerShell 資源庫中搜尋 Windows PowerShell 模組。 最簡單的用法會根據模組名稱進行搜尋,但您也可以根據命令名稱、版本、DscResource 和 RoleCapability 進行搜尋。
Find-Script 使用此 Cmdlet 在 PowerShell 資源庫中搜尋 Windows PowerShell 指令碼。 最簡單的用法會根據指令碼名稱進行搜尋,但您也可以根據版本進行搜尋。

其他閱讀:您也可以在 PowerShell 資源庫中搜尋模組和指令碼。

TLS 1.2

PowerShell 資源庫需要使用傳輸層安全性 (TLS) 1.2 來協助保護通訊。 Windows 10 和 Windows Server 2016 預設不支援在 Windows PowerShell 中使用 TLS 1.2。 因此,您必須啟用 TLS 1.2 來下載 PowerShell 資源庫內容。

若要啟用目前 PowerShell 提示字元的 TLS 1.2,請執行下列命令:

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 

若要在電腦上永久修正此問題,您需要建立登錄機碼。 您可以執行下列兩個命令來建立必要的金鑰:

Set-ItemProperty -Path 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\.NetFramework\v4.0.30319'-Name 'SchUseStrongCrypto' -Value '1' -Type DWord
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\.NetFramework\v4.0.30319' -Name 'SchUseStrongCrypto' -Value '1' -Type DWord

您可以建立自己的 NuGet 摘要,為您的組織實作私人 PowerShell 資源庫。 您可以使用檔案共用或 Web 應用程式來建立 NuGet 摘要。 當擁有私人 PowerShell 資源庫時,您必須使用 Register-PSRepository Cmdlet 並指定來源位置來註冊 NuGet 摘要。 註冊存放庫之後,使用者可以進行搜尋,就像在 PowerShell 資源庫一樣。

其他閱讀:如需建立 NuGet 摘要的詳細資訊,請參閱裝載您自己的 NuGet 摘要