Test-DscConfiguration
测试节点上的实际配置是否与所需配置相匹配。
语法
Test-DscConfiguration
[[-ComputerName] <String[]>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-AsJob]
[-Detailed]
[<CommonParameters>]
Test-DscConfiguration
[[-ComputerName] <String[]>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-AsJob]
[-Path] <String>
[<CommonParameters>]
Test-DscConfiguration
[[-ComputerName] <String[]>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-AsJob]
-ReferenceConfiguration <String>
[<CommonParameters>]
Test-DscConfiguration
[-ThrottleLimit <Int32>]
-CimSession <CimSession[]>
[-AsJob]
[-Path] <String>
[<CommonParameters>]
Test-DscConfiguration
[-ThrottleLimit <Int32>]
-CimSession <CimSession[]>
[-AsJob]
-ReferenceConfiguration <String>
[<CommonParameters>]
Test-DscConfiguration
[-ThrottleLimit <Int32>]
-CimSession <CimSession[]>
[-AsJob]
[-Detailed]
[<CommonParameters>]
说明
cmdlet Test-DscConfiguration
测试节点上的实际配置是否与所需配置匹配。 通过使用计算机名称或通用信息模型 (CIM) 会话,指定想要测试配置的计算机。 如果不指定目标计算机,则该 cmdlet 将测试本地计算机的配置。
如果所需配置与实际配置匹配,则 cmdlet 将返回字符串值“True”。 否则,它将返回字符串值“False”。
示例
示例 1:测试本地计算机的配置
Test-DscConfiguration
此命令将测试本地计算机的配置。
示例 2:测试指定计算机的配置
$Session = New-CimSession -ComputerName "Server01" -Credential ACCOUNTS\PattiFuller
Test-DscConfiguration -CimSession $Session
此示例将测试由 CIM 会话指定的计算机的配置。 该示例为名为 Server01 的计算机创建 CIM 会话,以供与 cmdlet 一起使用。 或者,创建一个 CIM 会话数组以将 cmdlet 应用到多个指定的计算机。
第一个命令使用 New-CimSession
cmdlet 创建 CIM 会话,然后将 CimSession 对象存储在 变量中 $Session
。 该命令会提示你输入密码。 要了解详情,请键入 Get-Help New-CimSession
。
第二个命令测试由存储在 变量中的 $Session
CimSession 对象标识的计算机的配置,在本例中为名为 Server01 的计算机。
示例 3:带有详细结果的配置测试
Test-DscConfiguration -ComputerName "Server01", "Server02", "Server03" -Detailed
此命令测试由 ComputerName 参数指定的一组计算机的配置,并返回详细信息(包括总体状态、处于所需状态的资源、未处于所需状态的资源以及计算机名称)。
示例 4:测试文件夹中指定的配置
Test-DscConfiguration -Path "C:\Dsc\Configurations"
此命令测试在 Path 参数指定的文件夹中定义的配置。 针对一组计算机测试配置,每台计算机以配置文件的文件名标识。
示例 5:测试文件中指定的配置
Test-DscConfiguration -ReferenceConfiguration "C:\Dsc\Configurations\WebServer.mof" -ComputerName "Server01", "Server02", "Server03"
针对 ComputerName 参数指定的一组计算机,此命令测试文件中定义的配置。
参数
-AsJob
指示此 cmdlet 将命令作为后台作业运行。
如果指定 AsJob 参数,该命令将返回表示作业的对象,然后显示命令提示符。 作业完成前,可以继续在此会话中工作。
作业在本地计算机上创建,并且来自远程计算机的结果将自动返回本地计算机。 若要管理作业,请使用 Job cmdlet。 若要获取作业结果,请使用 Receive-Job
cmdlet。
若要使用此参数,必须为本地计算机和远程计算机配置远程处理,并且在 Windows Vista 以及更高版本的 Windows 操作系统上,还必须使用“以管理员身份运行”选项打开 Windows PowerShell。 有关详细信息,请参阅 about_Remote_Requirements。
有关Windows PowerShell后台作业的详细信息,请参阅about_Jobs和about_Remote_Jobs。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CimSession
在远程会话中或在远程计算机上运行 cmdlet。 输入计算机名称或会话对象,例如 New-CimSession 或 Get-CimSession cmdlet 的输出。 默认为本地计算机上的当前会话。
Type: | CimSession[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ComputerName
指定此 cmdlet 要测试配置的一批计算机名称。 该 cmdlet 测试由这些计算机的 Path 参数指定的位置中的配置文件。
Type: | String[] |
Aliases: | CN, ServerName |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Credential
针对目标计算机,指定用户名和密码作为 PSCredential 对象。 若要获取 PSCredential 对象,请使用 Get-Credential
cmdlet。 要了解详情,请键入 Get-Help Get-Credential
。
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Detailed
指示此 cmdlet 返回与节点所需状态进行比较的配置文档的详细结果。 结果中包括总体状态、处于所需状态的资源、未处于所需状态的资源以及计算机名称等信息。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
指定包含配置文档文件的文件夹路径。 针对由 ComputerName 或 CimSession 参数指定的计算机所需状态,该 cmdlet 测试配置。
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ReferenceConfiguration
指定配置文档文件的路径。 针对由 ComputerName 或 CimSession 参数指定的计算机实际状态,该 cmdlet 测试配置。
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ThrottleLimit
指定可为运行 cmdlet 而确立的操作的最大数量。 如果省略此参数或输入值 0
,则Windows PowerShell根据计算机上运行的 CIM cmdlet 数计算 cmdlet 的最佳限制。 该限制仅适用于当前 cmdlet,不适用于会话或计算机。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |