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>]
说明
Test-DscConfiguration
cmdlet 测试节点上的实际配置是否与所需的配置匹配。 使用计算机名称或通用信息模型 (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
。
第二个命令测试 CimSession 存储在 $Session
变量中的对象的计算机的配置,在本例中为名为 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 参数,该命令将返回一个代表作业的对象,然后显示命令提示符。 可以在会话中继续工作,直到作业完成。
作业在本地计算机上创建,远程计算机的结果会自动返回到本地计算机。 若要管理作业,请使用作业 cmdlet。 若要获取作业结果,请使用 Receive-Job
cmdlet。
若要使用此参数,必须为本地和远程计算机配置远程处理,并且必须在 Windows Vista 及更高版本的 Windows作系统上打开 Windows PowerShell,并使用“以管理员身份运行”选项打开 Windows PowerShell。 有关详细信息,请参阅 about_Remote_Requirements。
有关 Windows PowerShell 后台作业的详细信息,请参阅 about_Jobs 和 about_Remote_Jobs。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-CimSession
在远程会话或远程计算机上运行 cmdlet。 输入计算机名或会话对象,例如 New-CimSession 或 Get-CimSession cmdlet 的输出。 默认值为本地计算机上的当前会话。
类型: | CimSession[] |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-ComputerName
指定此 cmdlet 测试配置的计算机名称数组。 该 cmdlet 将配置文档测试到这些计算机的 Path 参数指定的位置。
类型: | String[] |
别名: | CN, ServerName |
Position: | 1 |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-Credential
指定目标计算机的 PSCredential 对象的用户名和密码。 若要获取 PSCredential 对象,请使用 Get-Credential
cmdlet。 有关详细信息,请键入 Get-Help Get-Credential
。
类型: | PSCredential |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Detailed
指示此 cmdlet 返回将配置文档与节点所需状态进行比较的详细结果。 结果包括信息,例如总体状态、处于所需状态的资源、不处于所需状态的资源和计算机名称。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Path
指定包含配置文档文件的文件夹的路径。 该 cmdlet 根据由 ComputerName 或 CimSession 参数指定的计算机的所需状态测试配置。
类型: | String |
Position: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-ReferenceConfiguration
指定配置文件的路径。 此 cmdlet 根据 ComputerName 或 CimSession 参数指定的计算机的实际状态测试配置。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-ThrottleLimit
指定可以建立以运行 cmdlet 的最大并发作数。 如果省略此参数或输入 0
值,则 Windows PowerShell 会根据计算机上运行的 CIM cmdlet 数计算 cmdlet 的最佳限制。 限制限制仅适用于当前 cmdlet,不适用于会话或计算机。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |