Get-CMTSStepConditionSoftware

Get an installed software condition from a task sequence step.

Syntax

Get-CMTSStepConditionSoftware
   -InputObject <IResultObject>
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]

Description

Use this cmdlet to get a installed software 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.

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 software 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-CMTSStepConditionSoftware -InputObject $tsStepDynVar

SmsProviderObjectPath : SMS_TaskSequence_SoftwareConditionExpression
Operator              : ThisVersion
ProductCode           : {B3842C82-95EB-472C-940A-D82C4A10857D}
ProductName           : Microsoft Endpoint Configuration Manager Console
UpgradeCode           : {B038D5E8-6C93-4A05-9E21-240324CFDF0E}
Version               : 5.2107.1059.1000

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-CMTSStepConditionSoftware -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 software 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_SoftwareConditionExpression server WMI class.