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>]

说明

cmdlet Find-DscResource 搜索已注册的存储库以查找模块中包含的 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 资源。 默认情况下,显示当前版本。 若要显示其他版本,请使用 AllVersionsRequiredVersions 参数。

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 资源可以使用 TagRequiredVersion 参数进行定位。 标记 显示存储库中包含指定标记的每个资源的当前版本。 RequiredVersion 需要 ModuleName 参数, Name 参数是可选的。 NameModuleName 参数限制输出。 使用 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

在结果中包含标记为预发行的资源。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AllVersions

AllVersions 参数显示 DSC 资源的每个可用版本。 不能将 AllVersions 参数与 MinimumVersion、MaximumVersionRequiredVersion 参数一起使用。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Filter

根据 PackageManagement 提供程序的搜索语法查找资源。 例如,指定要在 ModuleNameDescription 属性中搜索的字词。

Type:String
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:False
Accept wildcard characters:False

-MinimumVersion

指定要包含在结果中的资源的最低版本。 不能在同一命令中使用 MinimumVersion 和 RequiredVersion 参数。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ModuleName

指定包含 DSC 资源的模块。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

指定资源的名称。 默认值为所有资源。 使用逗号分隔资源名称数组。

Type:String[]
Position:0
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Proxy

指定请求的代理服务器,而不是与 Internet 资源的直接连接。

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ProxyCredential

指定具有使用 Proxy 参数中指定的代理服务器的权限的用户帐户。

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Repository

指定要搜索资源的存储库。 使用逗号分隔存储库名称数组。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequiredVersion

指定要包含在结果中的模块的确切版本号。 不能在同一命令中使用 RequiredVersion 和 MinimumVersion 参数。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Tag

指定对存储库中的模块进行分类的标记。 使用逗号分隔标记数组。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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 博客中的公告