Find-Module
查找与指定条件匹配的存储库中的模块。
语法
All
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>]
说明
该 Find-Module cmdlet 查找与指定条件匹配的存储库中的模块。
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 搜索所有可用模块,因为源之间可能发生名称冲突。
采用模块版本号的参数需要格式化为版本号的字符串。
- 标准版本号的格式为
x.y.zx、y 和 z 是数字 - 预发行版版本的格式是
x.y.z-<prerelease_label><prerelease_label>分配给该版本的任意字符串。
以下示例使用 PowerShell 库 作为唯一注册的存储库。
Get-PSRepository 显示已注册的存储库。 如果有多个已注册的存储库,请使用 -Repository 参数指定存储库的名称。
示例
示例 1:按名称查找模块
此示例在默认存储库中找到一个模块。
Find-Module -Name PowerShellGet
Version Name Repository Description
------- ---- ---------- -----------
2.1.0 PowerShellGet PSGallery PowerShell module with commands for discovering...
该 Find-Module cmdlet 使用 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
该 Find-Module cmdlet 使用 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...
该 Find-Module cmdlet 使用 Name 参数指定 PowerShellGet 模块。
MinimumVersion 指定版本 1.6.5。
Find-Module 返回 PowerShellGet 版本 2.1.0 ,因为它超出了最低版本,并且是最新版本。
示例 4:按特定版本查找模块
此示例演示如何安装模块的特定预发行版。 预发行版本的格式为 <version_number>-<prerelease_label>.
Find-Module PSReadLine -AllowPrerelease -RequiredVersion 2.2.4-beta1
Version Name Repository Description
------- ---- ---------- -----------
2.2.4-beta1 PSReadLine PSGallery Great command line editing in the PowerS…
示例 5:在特定存储库中查找模块
此示例使用 Repository 参数查找特定存储库中的模块。
Find-Module -Name PowerShellGet -Repository PSGallery
Version Name Repository Description
------- ---- ---------- -----------
2.1.0 PowerShellGet PSGallery PowerShell module with commands for discovering...
该 Find-Module cmdlet 使用 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...
该 Register-PSRepository cmdlet 注册新的存储库。
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...
该 Find-Module cmdlet 使用 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...
该 Find-Module cmdlet 使用 Filter 参数搜索 AppDomain 的存储库。
示例 9:按标记查找模块
此示例演示如何按标记查找模块。 该值 CrescendoBuilt 是自动添加到使用 Microsoft.PowerShell.Crescendo 模块创建的模块的标记。
Find-Module -Tag CrescendoBuilt
Version Name Repository Description
------- ---- ---------- -----------
0.1.0 Foil PSGallery A PowerShell Crescendo wrapper for Chocolatey
0.3.1 Cobalt PSGallery A PowerShell Crescendo wrapper for WinGet
1.1.0 SysInternals PSGallery PowerShell cmdlets for SysInternal tools
0.0.4 Croze PSGallery A PowerShell Crescendo wrapper for Homebrew
0.0.2 AptPackage PSGallery PowerShell Crescendo-generated Module to query APT-Package Information
1.0.1 RoboCopy PSGallery PowerShell cmdlet for the official RoboCopy.exe
1.0.2 TShark PSGallery PowerShell cmdlet for tshark.exe
1.0.0 SpeedTestCLI PSGallery PowerShell cmdlets speedtest-cli
1.0.0 SpeedTest-CLI PSGallery PowerShell cmdlets for Internet Speed Test
1.0.2 Image2Text PSGallery PowerShell Images into ASCII art
0.1.1 Quser.Crescendo PSGallery This module displays session information of users logged onto a local or remote m...
1.0.2 Takeown PSGallery Crescendo Powershell wrapper of takeown.exe
参数
-AllowPrerelease
包括在标记为预发行的结果模块中。
参数属性
| 类型: | SwitchParameter |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-AllVersions
指定在结果中包含模块的所有版本。 不能将 AllVersions 参数与 MinimumVersion、 MaximumVersion 或 RequiredVersion 参数一起使用。
参数属性
| 类型: | SwitchParameter |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Command
指定要在模块中找到的命令数组。 命令可以是函数或工作流。
参数属性
| 类型: | String[] |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Credential
指定有权为指定的包提供程序或源安装模块的用户帐户。
参数属性
| 类型: | PSCredential |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-DscResource
指定包含 DSC 资源的模块的名称或部分名称。 根据 PowerShell 约定,在提供多个参数时执行 OR 搜索。
参数属性
| 类型: | String[] |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Filter
根据 PackageManagement 提供程序特定的搜索语法指定筛选器。 对于 NuGet 模块,此参数等效于使用 PowerShell 库 网站上的搜索栏进行搜索。
参数属性
| 类型: | String |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-IncludeDependencies
指示此作包括依赖于 Name 参数中指定的模块的所有模块。
参数属性
| 类型: | SwitchParameter |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Includes
仅返回包含特定类型的 PowerShell 功能的模块。 例如,你可能只想查找包含 DSCResource 的模块。 此参数的可接受值如下所示:
- Cmdlet (命令行工具)
- DscResource
- 功能
- RoleCapability
参数属性
| 类型: | String[] |
| 默认值: | None |
| 接受的值: | DscResource, Cmdlet, Function, RoleCapability |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-MaximumVersion
指定要包含在搜索结果中的模块的最大版本或最新版本。 MaximumVersion 和 RequiredVersion 不能在同一命令中使用。
参数属性
| 类型: | String |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-MinimumVersion
指定要包含在结果中的模块的最低版本。 MinimumVersion 和 RequiredVersion 不能在同一命令中使用。
参数属性
| 类型: | String |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-Name
指定要在存储库中搜索的模块的名称。 接受以逗号分隔的模块名称列表。 可以使用通配符。
参数属性
| 类型: | String[] |
| 默认值: | None |
| 支持通配符: | True |
| 不显示: | False |
参数集
(All)
| Position: | 0 |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-Proxy
指定请求的代理服务器,而不是直接连接到 Internet 资源。
参数属性
| 类型: | Uri |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-ProxyCredential
指定有权使用 Proxy 参数指定的代理服务器的用户帐户。
参数属性
| 类型: | PSCredential |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-Repository
使用 Repository 参数指定要搜索模块的存储库。 注册多个存储库时使用。 接受以逗号分隔的存储库列表。 若要注册存储库,请使用 Register-PSRepository。 若要显示已注册的存储库,请使用 Get-PSRepository。
参数属性
| 类型: | String[] |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-RequiredVersion
指定要包含在结果中的模块的确切版本号。 RequiredVersion 不能与 MinimumVersion 或 MaximumVersion 相同的命令中使用。
参数属性
| 类型: | String |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-RoleCapability
指定角色功能的数组。
参数属性
| 类型: | String[] |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Tag
指定一个标签数组。 示例标记包括 DesiredStateConfiguration、 DSC、 DSCResourceKit 或 PSModule。
参数属性
| 类型: | String[] |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
CommonParameters
此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters。
输入
String
String
Uri
PSCredential
输出
PSRepositoryItemInfo
Find-Module 创建可将管道发送到 cmdlet 的 PSRepositoryItemInfo 对象,例如 Install-Module。
备注
PowerShell 包含以下与 Find-Module相关的别名:
- 所有平台:
fimo
重要
截至 2020 年 4 月,PowerShell 库不再支持传输层安全性(TLS)版本 1.0 和 1.1。 如果未使用 TLS 1.2 或更高版本,则尝试访问 PowerShell 库时会收到错误。 使用以下命令确保使用的是 TLS 1.2:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
有关详细信息,请参阅 PowerShell 博客中的 公告。