Find-Module
在符合指定準則的存放庫中尋找模組。
Syntax
Find-Module
[[-Name] <string[]>]
[-MinimumVersion <string>]
[-MaximumVersion <string>]
[-RequiredVersion <string>]
[-AllVersions]
[-IncludeDependencies]
[-Filter <string>]
[-Tag <string[]>]
[-Includes <string[]>]
[-DscResource <string[]>]
[-RoleCapability <string[]>]
[-Command <string[]>]
[-Proxy <uri>]
[-ProxyCredential <pscredential>]
[-Repository <string[]>]
[-Credential <pscredential>]
[-AllowPrerelease]
[<CommonParameters>]
Description
Cmdlet Find-Module
會在符合指定準則的存放庫中尋找模組。
Find-Module
會針對找到的每個模組傳回 PSRepositoryItemInfo 物件。 物件可以向下傳送至 Cmdlet,例如 Install-Module
。
第一次 Find-Module
嘗試使用存放庫時,系統可能會提示您安裝更新。
如果未向 Register-PSRepository
Cmdlet 註冊存放庫來源,則會傳回錯誤。
Find-Module
如果未使用任何限制版本的參數,則會傳回模組的最新版本。 若要取得模組版本的存放庫清單,請使用 AllVersions參數。
如果指定 MinimumVersion 參數, Find-Module
則會傳回等於或大於最小值的模組版本。 如果存放庫中有較新版本可用,則會傳回較新的版本。
如果指定 MaximumVersion 參數, Find-Module
則會傳回未超過所指定版本的最新模組版本。
如果指定 RequiredVersion 參數, Find-Module
則只會傳回與指定版本完全相符的模組版本。 Find-Module
會搜尋所有可用的模組,因為來源之間可能會發生名稱衝突。
下列範例會使用 PowerShell 資源庫 作為唯一已註冊的存放庫。 Get-PSRepository
會顯示已註冊的存放庫。 如果您有多個已註冊的存放庫,請使用 -Repository
參數來指定存放庫的名稱。
範例
範例 1:依名稱尋找模組
此範例會在預設存放庫中尋找模組。
Find-Module -Name PowerShellGet
Version Name Repository Description
------- ---- ---------- -----------
2.1.0 PowerShellGet PSGallery PowerShell module with commands for discovering...
Cmdlet 會 Find-Module
使用 Name 參數來指定 PowerShellGet 模組。
範例 2:尋找具有類似名稱的模組
此範例會使用星號 () *
通配符來尋找具有類似名稱的模組。
Find-Module -Name PowerShell*
Version Name Repository Description
------- ---- ---------- -----------
0.4.0 powershell-yaml PSGallery Powershell module for serializing and...
2.1.0 PowerShellGet PSGallery PowerShell module with commands for...
1.9 Powershell.Helper.Extension PSGallery # Powershell.Helper.Extension...
3.1 PowerShellHumanizer PSGallery PowerShell Humanizer wraps Humanizer...
4.0 PowerShellISEModule PSGallery a module that adds capability to the ISE
Cmdlet Find-Module
會使用 Name 參數搭配星號 (*
) 通配符來尋找包含 PowerShell 的所有模組。
範例 3:依最低版本尋找模組
此範例會搜尋模組的最低版本。 如果存放庫包含較新版本的模組,則會傳回較新版本。
Find-Module -Name PowerShellGet -MinimumVersion 1.6.5
Version Name Repository Description
------- ---- ---------- -----------
2.1.0 PowerShellGet PSGallery PowerShell module with commands for discovering...
Cmdlet 會 Find-Module
使用 Name 參數來指定 PowerShellGet 模組。 MinimumVersion 指定 1.6.5 版。 Find-Module
會傳回 PowerShellGet 2.1.0 版,因為它超過最低版本,而且是最新的版本。
範例 4:依特定版本尋找模組
這個範例會傳回 代表模組特定版本的物件。 如果找不到指定的版本,則會傳回錯誤。
Find-Module -Name PowerShellGet -RequiredVersion 1.6.5
Version Name Repository Description
------- ---- ---------- -----------
1.6.5 PowerShellGet PSGallery PowerShell module with commands for discovering...
Cmdlet 會 Find-Module
使用 Name 參數來指定 PowerShellGet 模組。 RequiredVersion 參數會指定 1.6.5 版。
範例 5:在特定存放庫中尋找模組
此範例使用 存放庫 參數來尋找特定存放庫中的模組。
Find-Module -Name PowerShellGet -Repository PSGallery
Version Name Repository Description
------- ---- ---------- -----------
2.1.0 PowerShellGet PSGallery PowerShell module with commands for discovering...
Cmdlet 會 Find-Module
使用 Name 參數來指定 PowerShellGet 模組。 Repository 參數會指定搜尋 PSGallery 存放庫。
範例 6:在多個存放庫中尋找模組
此範例會使用 Register-PSRepository
來指定存放庫。 Find-Module
會使用存放庫來搜尋模組。
Register-PSRepository -Name MySource -SourceLocation https://www.myget.org/F/powershellgetdemo/
Find-Module -Name Contoso* -Repository PSGallery, MySource
Repository Version Name Description
---------- ------- ---- -----------
PSGallery 2.0.0.0 ContosoServer Cmdlets and DSC resources for managing Contoso Server...
MySource 1.2.0.0 ContosoClient Cmdlets and DSC resources for managing Contoso Client...
Cmdlet Register-PSRepository
會註冊新的存放庫。 Name 參數會指派名稱 MySource。 SourceLocation 參數會指定存放庫的位址。
Cmdlet Find-Module
會使用 Name 參數搭配星號 () *
通配符來指定 Contoso 模組。 Repository 參數會指定搜尋兩個存放庫 PSGallery 和 MySource。
範例 7:尋找包含 DSC 資源的模組
此命令會傳回包含 DSC 資源的模組。 Includes 參數有四個預先定義的功能,可用來搜尋存放庫。 使用 tab-complete 來顯示 Includes 參數支援的四個功能。
Find-Module -Repository PSGallery -Includes DscResource
Version Name Repository Description
------- ---- ---------- -----------
2.7.0 Carbon PSGallery Carbon is a PowerShell module...
8.5.0.0 xPSDesiredStateConfiguration PSGallery The xPSDesiredStateConfiguration module...
1.3.1 PackageManagement PSGallery PackageManagement (a.k.a. OneGet) is...
2.7.0.0 xWindowsUpdate PSGallery Module with DSC Resources...
3.2.0.0 xCertificate PSGallery This module includes DSC resources...
3.1.0.0 xPowerShellExecutionPolicy PSGallery This DSC resource can change the user...
Cmdlet Find-Module
會使用 Repository 參數來搜尋 存放庫 PSGallery。
Includes 參數會指定 DscResource,這是參數可以在存放庫中搜尋的功能。
範例 8:尋找具有篩選條件的模組
在此範例中,若要尋找模組,會使用篩選條件來搜尋存放庫。
針對以 NuGet 為基礎的存放庫, Filter 參數會搜尋自變數的名稱、描述和標記。
Find-Module -Filter AppDomain
Version Name Repository Description
------- ---- ---------- -----------
1.0.0.0 AppDomainConfig PSGallery Manipulate AppDomain configuration...
1.1.0 ClassExplorer PSGallery Quickly search the AppDomain for classes...
Cmdlet 會 Find-Module
使用 Filter 參數來搜尋 AppDomain 的存放庫。
參數
-AllowPrerelease
包含在標示為發行前版本的結果模組中。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllVersions
指定在結果中包含模組的所有版本。 您無法搭配 MinimumVersion、MaximumVersion 或 RequiredVersion 參數使用 AllVersions 參數。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Command
指定要在模組中尋找的命令陣列。 命令可以是函式或工作流程。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
指定有權安裝指定套件提供者或來源之模組的用戶帳戶。
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-DscResource
指定包含 DSC 資源的模組名稱或部分名稱。 根據 PowerShell 慣例,當您提供多個自變數時,會執行 OR 搜尋。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Filter
根據 PackageManagement 提供者特定的搜尋語法來指定篩選。 對於 NuGet 模組,此參數相當於使用 PowerShell 資源庫 網站上的 搜尋 列進行搜尋。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IncludeDependencies
指出此作業包含所有相依於 Name 參數中所指定模組的模組。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Includes
只傳回包含特定 PowerShell 功能的模組。 例如,您可能只想尋找包含 DSCResource 的模組。 此參數可接受的值如下所示:
- Cmdlet
- DscResource
- 函式
- RoleCapability
Type: | String[] |
Accepted values: | DscResource, Cmdlet, Function, RoleCapability |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaximumVersion
指定要包含在搜尋結果中的模組最大值或最新版本。 MaximumVersion 和 RequiredVersion 不能用在相同的命令中。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-MinimumVersion
指定要包含於結果中的模組最低版本。 MinimumVersion 和 RequiredVersion 不能用在相同的命令中。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
指定要在存放庫中搜尋的模組名稱。 接受以逗號分隔的模組名稱清單。 可使用萬用字元。
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Proxy
指定要求的 Proxy 伺服器,而不是直接連線到因特網資源。
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ProxyCredential
指定具有使用 Proxy 參數所指定 Proxy 伺服器之權限的使用者帳戶。
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Repository
使用 存放庫 參數來指定要搜尋模組的存放庫。 註冊多個存放庫時使用。 接受以逗號分隔的存放庫清單。 若要註冊存放庫,請使用 Register-PSRepository
。 若要顯示已註冊的存放庫,請使用 Get-PSRepository
。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredVersion
指定要包含在結果中的模組確切版本號碼。 RequiredVersion 不能與 MinimumVersion 或 MaximumVersion 相同的命令中使用。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-RoleCapability
指定角色功能的陣列。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Tag
指定標記的陣列。 範例卷標包括 DesiredStateConfiguration、 DSC、 DSCResourceKit 或 PSModule。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
輸入
String[]
輸出
PSRepositoryItemInfo
Find-Module
會建立可將管線向下傳送至 Cmdlet 的 PSRepositoryItemInfo 物件,例如 Install-Module
。
備註
重要
從 2020 年 4 月起,PowerShell 資源庫已不再支援傳輸層安全性 (TLS) 1.0 和 1.1 版。 如果您不是使用 TLS 1.2 或更高版本,您在嘗試存取 PowerShell 資源庫時將會收到錯誤。 使用下列命令來確保您使用的是 TLS 1.2:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
如需詳細資訊,請參閱 PowerShell 部落格中的公告 \(英文\)。