Get-CMSoftwareUpdate

Get a software update.

Syntax

Get-CMSoftwareUpdate
   [-ArticleId <String>]
   [-BulletinId <String>]
   [-Category <IResultObject[]>]
   [-CategoryName <String[]>]
   [-DatePostedMax <DateTime>]
   [-DatePostedMin <DateTime>]
   [-DateRevisedMax <DateTime>]
   [-DateRevisedMin <DateTime>]
   [-EulaExist <Boolean>]
   [-Fast]
   [-IncludeUpgrade]
   [-IsContentProvisioned <Boolean>]
   [-IsDeployed <Boolean>]
   [-IsExpired <Boolean>]
   [-IsLatest <Boolean>]
   [-IsOfflineServiceable <Boolean>]
   [-IsSuperseded <Boolean>]
   [-IsUserDefined <Boolean>]
   [-Name <String>]
   [-OnlyExpired]
   [-Severity <CustomSeverityType>]
   [-Vendor <String>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]
Get-CMSoftwareUpdate
   [-Fast]
   -Id <Int32>
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]
Get-CMSoftwareUpdate
   [-Fast]
   -UpdateGroup <IResultObject>
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]
Get-CMSoftwareUpdate
   [-Fast]
   -UpdateGroupId <String[]>
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]
Get-CMSoftwareUpdate
   [-Fast]
   -UpdateGroupName <String[]>
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]

Description

Use this cmdlet to get one or more software updates.

For more information, see Software update management documentation in the core docs.

Note

Run Configuration Manager cmdlets from the Configuration Manager site drive, for example PS XYZ:\>. For more information, see getting started.

Examples

Example 1: Get downloaded software updates

This command gets all software updates that the site has downloaded.

Get-CMSoftwareUpdate -IsContentProvisioned $True

Example 2: Get software updates by update group

This command first gets the software update group object named TestSUgroup10. It then uses the pipeline operator to pass the object to Get-CMSoftwareUpdate. The result is the list of all software updates for the software update group.

Get-CMSoftwareUpdateGroup -Name "TestSUgroup10" | Get-CMSoftwareUpdate

Parameters

-ArticleId

Specify the Article ID of a software update. For example, 4571687.

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

-BulletinId

Specify the Bulletin ID of a software update. For example, MS18-952.

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

-Category

Specify the category of a software update. To get a category object, use the Get-CMSoftwareUpdateCategory cmdlet.

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

-CategoryName

Specify an array of category names for software updates.

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

-DatePostedMax

Specify the latest date that a software update was released.

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

-DatePostedMin

Specify the earliest date that a software update was released.

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

-DateRevisedMax

Specify the latest date that a software update was revised.

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

-DateRevisedMin

Specify the earliest date that a software update was revised.

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

-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

-EulaExist

Set this parameter to $true to filter results for all updates that have a license agreement.

Type:Boolean
Aliases:EulaExists
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Fast

Add this parameter to not automatically refresh lazy properties. Lazy properties contain values that are relatively inefficient to retrieve. Getting these properties can cause additional network traffic and decrease cmdlet performance.

If you don't use this parameter, the cmdlet displays a warning. To disable this warning, set $CMPSSuppressFastNotUsedCheck = $true.

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

-Id

Specifies the ID of a software update. This value is the CI_ID, for example 143404.

Type:Int32
Aliases:CIId, CI_ID
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-IncludeUpgrade

Add this parameter to include software updates in the upgrade category.

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

-IsContentProvisioned

Set this parameter to $true to filter results for all updates for which the site has downloaded content.

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

-IsDeployed

Set this parameter to $true to filter results for all updates that are deployed.

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

-IsExpired

Set this parameter to $true to filter results for all updates that are expired.

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

-IsLatest

Set this parameter to $true to filter results for the latest version of the software update.

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

-IsOfflineServiceable

Set this parameter to $true to filter results for all updates that are offline-serviceable. You can use the DISM command-line tool to inject these updates into an OS image.

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

-IsSuperseded

Set this parameter to $true to filter results for all updates that are superseded.

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

-IsUserDefined

Set this parameter to $true to filter results for all updates that are user-defined.

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

-Name

Specify the name of a software update. This parameter compares against the localized display name attribute.

You can use wildcard characters:

  • *: Multiple characters
  • ?: Single character
Type:String
Aliases:LocalizedDisplayName
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-OnlyExpired

Add this parameter to only search for expired software updates.

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

-Severity

Specify the severity of the software update.

Type:CustomSeverityType
Accepted values:None, Low, Moderate, Important, Critical
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UpdateGroup

Specify software update group object. To get this object, use the Get-CMSoftwareUpdateGroup cmdlet.

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

-UpdateGroupId

Specify an array of IDs of software update groups. This value is the CI_ID or Config Item ID of the software update group. For example, 107078.

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

-UpdateGroupName

Specify an array of names of software update groups.

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

-Vendor

Applies to version 2010 and later. Specify the name of the software update vendor. The vendor for most software updates is "Microsoft". If you configure third-party software updates, use this value to filter on other update vendors.

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

Inputs

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject[]

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

Outputs

IResultObject[]

IResultObject

Notes

For more information on this return object and its properties, see SMS_SoftwareUpdate server WMI class.