Find-DscResource
查找 Desired State Configuration (DSC) 资源。
语法
Find-DscResource
[[-Name] <String[]>]
[-ModuleName <String>]
[-MinimumVersion <String>]
[-MaximumVersion <String>]
[-RequiredVersion <String>]
[-AllVersions]
[-AllowPrerelease]
[-Tag <String[]>]
[-Filter <String>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-Repository <String[]>]
[<CommonParameters>]
说明
该 Find-DscResource
cmdlet 搜索已注册的存储库以查找模块中包含的 DSC 资源。 默认情况下 Find-DscResource
,搜索所有已注册的存储库。
对于找到 Find-DscResource
的每个模块,将返回 PSGetDscResourceInfo 对象。
可以将 PSGetDscResourceInfo 对象向下 Install-Module
发送到 cmdlet。
Install-Module
安装模块。
示例
示例 1:查找所有 DSC 资源
Find-DscResource
从已注册的存储库返回 DSC 资源。 若要搜索特定存储库,请使用 Repository 参数。
Find-DscResource
Name Version ModuleName Repository
---- ------- ---------- ----------
Carbon_Privilege 2.8.1 Carbon PSGallery
Carbon_ScheduledTask 2.8.1 Carbon PSGallery
Carbon_Service 2.8.1 Carbon PSGallery
PackageManagement 1.4 PackageManagement PSGallery
PackageManagementSource 1.4 PackageManagement PSGallery
PSModule 2.1.4 PowerShellGet PSGallery
PSRepository 2.1.4 PowerShellGet PSGallery
xArchive 8.7.0.0 xPSDesiredStateConfiguration PSGallery
xDSCWebService 8.7.0.0 xPSDesiredStateConfiguration PSGallery
xEnvironment 8.7.0.0 xPSDesiredStateConfiguration PSGallery
示例 2:按名称查找 DSC 资源
Find-DscResource
按名称查找 DSC 资源。 使用逗号分隔资源名称数组。
Find-DscResource -Name xWebsite, xWebApplication, xWebSiteDefaults
Name Version ModuleName Repository
---- ------- ---------- ----------
xWebApplication 2.6.0.0 xWebAdministration PSGallery
xWebsite 2.6.0.0 xWebAdministration PSGallery
xWebSiteDefaults 2.6.0.0 xWebAdministration PSGallery
Find-DscResource
使用 Name 参数查找指定的 DSC 资源数组。
示例 3:查找 DSC 资源并安装它
Find-DscResource
找到 DSC 资源,并将对象发送到要安装的管道。
安装后,用于 Get-InstalledModule
查看结果。
可以将同一模块中的多个资源发送到管道 Install-Module
。
Install-Module
尝试仅安装模块一次。
Find-DscResource -Name xWebsite | Install-Module
Find-DscResource
使用 Name 参数查找名为 xWebsite 的资源。 该对象将管道向下发送到 Install-Module
cmdlet。
Install-Module
安装资源的 xWebAdministration 模块。
示例 4:查找模块中的所有 DSC 资源
Find-DscResource
查找指定模块中包含的所有 DSC 资源。 默认情况下,将显示当前版本。 若要显示其他版本,请使用 AllVersions 或 RequiredVersions 参数。
Find-DscResource -ModuleName xWebAdministration
Name Version ModuleName Repository
---- ------- ---------- ----------
WebApplicationHandler 2.6.0.0 xWebAdministration PSGallery
xIisFeatureDelegation 2.6.0.0 xWebAdministration PSGallery
xIisHandler 2.6.0.0 xWebAdministration PSGallery
xIisLogging 2.6.0.0 xWebAdministration PSGallery
Find-DscResource
使用 ModuleName 参数指定 xWebAdministration 并查找模块中包含的 DSC 资源。 将显示每个资源的当前版本。
示例 5:按标记和所需版本查找 DSC 资源
DSC 资源可以使用参数 Tag 和 RequiredVersion 找到。 标记 显示包含存储库中指定标记的每个资源的当前版本。 RequiredVersion 需要 ModuleName 参数, Name 参数是可选的。 Name 和 ModuleName 参数限制输出。 使用 AllVersions 参数显示 DSC 资源的可用版本。
Find-DscResource -ModuleName xWebAdministration -Tag DSC -RequiredVersion 1.20
Name Version ModuleName Repository
---- ------- ---------- ----------
xIisFeatureDelegation 1.20.0.0 xWebAdministration PSGallery
xIisHandler 1.20.0.0 xWebAdministration PSGallery
xIisLogging 1.20.0.0 xWebAdministration PSGallery
xIisMimeTypeMapping 1.20.0.0 xWebAdministration PSGallery
示例 6:使用筛选器查找资源
Find-DscResource
查找所有资源,并使用 Filter 参数按 域指定结果。
Filter 参数在对象的说明或模块名称中查找筛选器值。 使用 Select-Object
cmdlet 查看对象的属性。
Find-DscResource -Filter Domain
Name Version ModuleName Repository
---- ------- ---------- ---------
xComputer 4.1.0.0 xComputerManagement PSGallery
Computer 6.4.0.0 ComputerManagementDsc PSGallery
xDSCDomainjoin 1.1 xDSCDomainjoin PSGallery
xDisk 1.0 xDisk PSGallery
xDSCFirewall 1.6.21 xDSCFirewall PSGallery
dmAwsTagInstance 1.0.1 domainAwsDSCResources PSGallery
参数
-AllowPrerelease
在结果中包含标记为预发行版的资源。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-AllVersions
AllVersions 参数显示 DSC 资源的每个可用版本。 不能将 AllVersions 参数与 MinimumVersion、 MaximumVersion 或 RequiredVersion 参数一起使用。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Filter
根据 PackageManagement 提供程序的搜索语法查找资源。 例如,指定要在 ModuleName 和 Description 属性中搜索的字词。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MaximumVersion
指定要包含在结果中的资源的最大版本。 MaximumVersion 和 RequiredVersion 参数不能在同一命令中使用。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MinimumVersion
指定要包含在结果中的资源的最低版本。 MinimumVersion 和 RequiredVersion 参数不能在同一命令中使用。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ModuleName
指定包含 DSC 资源的模块。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Name
指定资源的名称。 默认值为所有资源。 使用逗号分隔资源名称数组。
类型: | String[] |
Position: | 0 |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Proxy
为请求指定代理服务器,而不是直接连接到 Internet 资源。
类型: | Uri |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-ProxyCredential
指定有权使用 Proxy 参数中指定的代理服务器的用户帐户。
类型: | PSCredential |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-Repository
指定要搜索资源的存储库。 使用逗号分隔存储库名称数组。
类型: | String[] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-RequiredVersion
指定要包含在结果中的模块的确切版本号。 RequiredVersion 和 MinimumVersion 参数不能在同一命令中使用。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Tag
指定对存储库中的模块进行分类的标记。 使用逗号分隔标记数组。
类型: | String[] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输出
PSGetDscResourceInfo
Find-DscResource
返回 PSGetDscResourceInfo 对象。
备注
重要
截至 2020 年 4 月,PowerShell 库不再支持传输层安全性(TLS)版本 1.0 和 1.1。 如果未使用 TLS 1.2 或更高版本,则尝试访问 PowerShell 库时会收到错误。 使用以下命令确保使用的是 TLS 1.2:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
有关详细信息,请参阅 PowerShell 博客中的 公告。