Get-CMTSStepConditionQueryWmi
Get a WMI query condition from a task sequence step.
Syntax
Get-CMTSStepConditionQueryWmi
-InputObject <IResultObject>
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[<CommonParameters>]
Description
Use this cmdlet to get a WMI query condition object from a task sequence step. You can use this object to:
- View the details of the condition on the step.
- Copy the condition to another task sequence step.
When you use the New-CMTSStep* or Set-CMTSStep* cmdlets, provide this condition object with the Condition or AddCondition parameters. For example, Set-CMTSStepApplyDataImage.
For more information, see Use the task sequence editor: Conditions.
This cmdlet also returns the following types of conditions:
- OS language
- OS version and architecture
Note
Run Configuration Manager cmdlets from the Configuration Manager site drive, for example PS XYZ:\>
. For more information, see getting started.
Examples
Example 1: View the details of a WMI query condition
This example first gets the Default OS deployment task sequence, then gets the Set Dynamic Variables step. It passes the task sequence step object to this cmdlet to view the condition details.
$tsNameOsd = "Default OS deployment"
$tsOsd = Get-CMTaskSequence -Name $tsNameOsd -Fast
$tsStepNameDynVar = "Set Dynamic Variables"
$tsStepDynVar = Get-CMTSStepSetDynamicVariable -InputObject $tsOsd -StepName $tsStepNameDynVar
Get-CMTSStepConditionQueryWmi -InputObject $tsStepDynVar
SmsProviderObjectPath : SMS_TaskSequence_WMIConditionExpression
Namespace : root\cimv2
Query : SELECT OsLanguage FROM Win32_OperatingSystem WHERE OsLanguage='2108'
Example 2: Copy a condition to another step
This example first gets the Default OS deployment task sequence, then gets the Set Dynamic Variables step. It passes the task sequence step object to this cmdlet and saves the object in the $condition variable.
It then uses the Set-CMTSStepSetVariable cmdlet with the AddCondition parameter to add this same condition to the Set Task Sequence Variable step.
$tsNameOsd = "Default OS deployment"
$tsOsd = Get-CMTaskSequence -Name $tsNameOsd -Fast
$tsStepNameDynVar = "Set Dynamic Variables"
$tsStepDynVar = Get-CMTSStepSetDynamicVariable -InputObject $tsOsd -StepName $tsStepNameDynVar
$condition = Get-CMTSStepConditionQueryWmi -InputObject $tsStepDynVar
$tsStepNameSetTSVar = "Set Task Sequence Variable"
Set-CMTSStepSetVariable -TaskSequenceName $tsNameOsd -StepName $tsStepNameSetTSVar -AddCondition $condition
Parameters
-DisableWildcardHandling
This parameter treats wildcard characters as literal character values. You can't combine it with ForceWildcardHandling.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ForceWildcardHandling
This parameter processes wildcard characters and may lead to unexpected behavior (not recommended). You can't combine it with DisableWildcardHandling.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Specify a task sequence step object with a WMI query condition. To get this object, use one of the Get-CMTSStep cmdlets. For example, Get-CMTSStepApplyDataImage.
Type: | IResultObject |
Aliases: | TaskSequenceStep |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Inputs
Microsoft.ConfigurationManagement.ManagementProvider.IResultObject
Outputs
IResultObject[]
IResultObject
Notes
For more information on this return object and its properties, see SMS_TaskSequence_WMIConditionExpression server WMI class.