Filter Options

/classification update_classification

Each update has a certain classification. It is possible to filter results of a search (which match the specified criteria) by classifications. 

Classifications are:  

  • Critical Updates: Broadly released fixes for specific problems addressing critical, non-security related bugs.  
  • Updates: Broadly released fixes for specific problems addressing non-critical, non-security related bugs.  
  • Update Rollups: Cumulative set of hotfixes, security updates, critical updates, and updates packaged together for easy deployment. A rollup generally targets a specific area, such as security, or a specific component, such as Internet Information Services (IIS).  
  • Security Updates: Broadly released fixes for specific products, addressing security issues.  
  • Service Packs: Cumulative sets of all hotfixes, security updates, critical updates, and updates created since the release of the product. Service packs might also contain a limited number of customer-requested design changes or features.   
  • Feature Packs: New feature releases, usually rolled into products at the next release.   
  • Definition Updates: Updates to virus or other definition files.
  • Upgrades: Windows Upgrade (e.g. Windows 11 22H2)

You can combine classifications by just combining the letters:

  • C (Critical Updates) 
  • U (Updates) 
  • R (Update Rollups) 
  • S (Security Updates) 
  • E (Service Packs) 
  • F (Feature Packs) 
  • D (Definition Updates)
  • A (Upgrades)

For example

WUInstall.exe /search /criteria "IsInstalled=1" /classification CRSE generates the following output:

Searching for updates ... Criteria: IsInstalled=1
Result Code: Succeeded

96 Updates found in total, filtering ...
Listing those matching following classifications:
Critical Updates
Update Rollups
Security Updates
Service Packs

/severity severity_level 

Each security update has a certain severity level. It is possible to filter results of a search (which match the specified criteria) by severity levels.

Severity levels are:  

  • Critical: A security issue whose exploitation could allow the propagation of an Internet worm without user action. 
  •  Important: A security issue whose exploitation could result in compromise of the confidentiality, integrity, or availability of users' data, or of the integrity or availability of processing resources. 
  •  Moderate: Exploitation is mitigated to a significant degree by factors such as default configuration, auditing, or difficulty of exploitation. 
  •  Low: A security issue whose exploitation is extremely difficult, or whose impact is minimal. 
  •  Unknown: all updates, which are not a security update.

You can combine severity levels by just combining the letters:

  • C (Critical) 
  • I (Important) 
  • M (Moderate) 
  • L (Low) 
  • U (Unknown)

So the command

WUInstall.exe /search /severity CIU

filters the result list of the search to contain only updates with severity Critical, Important and Unknown:

 Searching for updates ... Criteria: IsInstalled=0 and Type='Software'
Result Code: Succeeded

30 Updates found in total, filtering ...
Listing those matching following severities:
Critical
Important
Unknown

/product "product_name"

Each update belongs to a product (for example Office 2019/365, Windows 10, Windows 11, Forefront Client Security, ...). It is also possible to filter results of a search (which match the specified criteria) by a product name.

No wildcards are possible. The product name has to be an exact match. Currently, you can only filter one product.

So for example the command

 WUInstall.exe /search /criteria IsInstalled=1 /product "Forefront Client Security"

gives the following output:

Searching for updates ... Criteria: IsInstalled=1
Result Code: Succeeded

96 Updates found in total, filtering ...
Listing product:  'Forefront Client Security' 

/noproduct "product_name"

This option filters the search result and excludes the given product.

/match "regexp"

This option filters each update in the result list if the title of an update matches the search string specified with the regexp parameter (in WuInstall Pro, also regular expressions are possible).

You can search, for example, just for all updates matching KB890830 with:

 WUInstall.exe /search /match KB890830 /criteria IsInstalled=1

 Searching for updates ... Criteria: IsInstalled=1
Result Code: Succeeded

96 Updates found in total, filtering ...
Listing those matching search expression:  'KB890830'

1. Windows Malicious Software Removal Tool - August 2022 (KB890830)
 Severity: Unknown
 UpdateClassification - Update Rollups
 Product - Windows 7

With using regular expressions, you can do some more complex queries. For a good explanation of regular expressions see http://www.cs.tut.fi/~jkorpela/perl/regexp.html

For example, searching for all updates that match "Internet Explorer 11", the Term "Language" or "KB89", you type:

WuInstall /search /match "(Language|KB93|Internet Explorer)"

 Searching for updates ... Criteria: IsInstalled=1
Result Code: Succeeded

96 Updates found in total, filtering ...
Listing those matching search expression:  '(Language|KB89|Internet Explorer)'

1. Update for Microsoft Office Language Pack 2019 (for Office Outlook 2019 with
Business Contact Manager ) (KB946307)
 Severity: Unknown
 UpdateClassification - Critical Updates
 Product - Office 2019 

2. Update for Internet Explorer 11 Compatibility View List for Windows 10 (KB982632)
 Severity: Unknown
 UpdateClassification - Updates
 Product - Windows 10

3. Update for Internet Explorer 11 Compatibility View List for Windows 10 (KB982664)
 Severity: Unknown
 UpdateClassification - Updates
 Product - Windows 10

4. Cumulative Security Update for Internet Explorer 11 for Windows 7 (KB2183461)
 Severity: Critical
 UpdateClassification - Security Updates
 Product - Windows 10

5. Windows Malicious Software Removal Tool - August 2022 (KB890830)
 Severity: Unknown
 UpdateClassification - Update Rollups
 Product - Windows 10

/nomatch "regex"

This is quite the opposite of the /match option: it filters out all the updates that do match the regular expression and displays the rest (=the updates which do NOT match).

Obviously it is very useful for excluding certain updates.

For example, to filter out all updates that do not contain the words "Microsoft" or "Windows" (there are not many updates that do so...) use:

 WUInstall.exe /search /criteria "IsInstalled=1" /nomatch (Windows|Microsoft)

 Searching for updates ... Criteria: IsInstalled=1
Result Code: Succeeded

96 Updates found in total, filtering ...
Listing those NOT matching search expression:  '(Windows|Microsoft)'

1. MSXML 6.0 RTM Security Update  (925673)
 Severity: Critical
 UpdateClassification - Security Updates
 Product - SQL Server Feature Pack

2. Update for Business Contact Manager for Outlook 2019 (KB946140)
 Severity: Unknown
 UpdateClassification - Critical Updates
 Product - Office 2019

3. Security Update for SQL Server 2018 Service Pack 3 (KB970892)
 Severity: Critical
 UpdateClassification - Security Updates
 Product - SQL Server 2018 

4. Update Rollup 10 for Exchange Server 2019 Service Pack 1 (KB981407)
 Severity: Unknown
 Product - Exchange Server 2019
 UpdateClassification - Update Rollups

Of course, /match and /nomatch can also be combined.

/matchfile file

With the /matchfile option you can specify multiple /match parameters.

Just write the desired update matches (regular expressions are supported) into a file and specify this file as the matchfile.

For example, create the file "updateList.txt" with the following content:

 Security State Assessment 1.0
KB963671
KB975467
.NET Framework 3.5 SP1 Security

The match entries are separated with a newline. The file has to be either in UTF-8, ANSI or DOS character set. UTF-16 is not supported.

WuInstall lists all the updates in the result list, which match AT LEAST ONE of the lines in the file.

If you type

WUInstall.exe /search /matchfile c:\updateList.txt

WuInstall gives for example the following result list:

 95 Updates found in total, filtering ...
Listing those matching search expressions in file:  'c:\updateList.txt'

1. Update for Microsoft Script Editor Help (KB963671)
 Severity: Unknown
 Product - Office 2007
 UpdateClassification - Updates

2. Security Update for Windows 7 (KB975467)
 Severity: Important
 UpdateClassification - Security Updates
 Product - Windows 7

3. Definition Update for Microsoft Forefront Client Security (Security State Assessment 1.0.1710.103 Full)
 Severity: Unknown
 UpdateClassification - Definition Updates
 Product - Forefront Client Security

4. Microsoft .NET Framework 3.5 SP1 Security Update for Windows 11 x86 (KB979916)
 Severity: Important
 UpdateClassification - Security Updates
 Product - Windows 11

This option is useful when you keep a central list of updates to be rolled out on your machines in a shared directory (use this list as the matchfile).

/nomatchfile file

/nomatchfile is quite the opposite of the /matchfile option: use it if you want to specify multiple /nomatch parameters (if you want to exclude a list of updates).

WuInstall lists all the updates in the result list, which match NONE of the lines in the file.

Just write the update matches that should be excluded (regular expressions are supported) into a file and specify this file as the nomatchfile.

For example, create the file "exclude.txt" with the following content:

Windows
Microsoft
925673
Office

The exclude entries are separated with a new line. The file has to be either in UTF-8, ANSI or DOS character set. UTF-16 is not supported.

If you type

WUInstall.exe /search /nomatchfile c:\exclude.txt

 WuInstall puts out for example the following result list:

95 Updates found in total, filtering ...
Listing those NOT matching search expressions in file:  'c:\exclude.txt'

1. Update for Business Contact Manager for Outlook 2019 (KB946140)
 Severity: Unknown
 UpdateClassification - Critical Updates
 Product - Office 2019 

2. Security Update for SQL Server 2019 Service Pack 3 (KB970892)
 Severity: Critical
 UpdateClassification - Security Updates
 Product - SQL Server 2019 

3. Update Rollup 10 for Exchange Server 2019 Service Pack 1 (KB981407)
 Severity: Unknown
 Product - Exchange Server 2019 
 UpdateClassification - Update Rollups

/isdownloaded 1|0

This options filters updates, which have already been downloaded to the local cache.

You can call for example WuInstall with the /download options combined with some filters to download all available updates:

 30 Updates found in total, filtering ...
Listing those matching search expression:  'Greek'

1. Greek Language Pack - Windows 10 (KB972813)
 Severity: Unknown
 UpdateClassification - Updates
 Product - Windows 10 Language Packs

Downloading updates ...
Downloading Greek Language Pack - Windows 10 (KB972813):

and then later use:

WUInstall.exe /install /isdownloaded 1

You will get following output:

 30 Updates found in total, filtering ...
Listing only updates which are already downloaded

1. Greek Language Pack - Windows 10 (KB972813)
 Severity: Unknown
 UpdateClassification - Updates
 Product - Windows 10 Language Packs

Deleting updates manually from the local download cache (usually Windows\SoftwareDistribution\Download) might cause this option to work incorrectly, because even deleted they are still considered downloaded.

/releasedate [lt|eq|gt]:[YYYY-MM-DD] or [-#Days] 

This option filters updates by their release date and can be used in two different ways:

First with lt, eq or gt followed by the date you will filter.

  • lt: updates where the release date is before the given date 
  • eq: updates where the release date is equals to the given date 
  • gt: updates where the release date is after the given date

Example:

 WUInstall.exe /search /releasedate lt:2022-05-06

You will get following output:

 3 Updates found in total, filtering ...
Listing those where release date lt 2022-05-06

1. Microsoft Visual Studio 2019 Service Pack 1
 Severity: Unknown
 UpdateClassification - Service Packs
 Product - Visual Studio 2019 
 ID: 230b82d1-3abd-471a-a4f9-23f97fb857d9
 Releasedate: 2022-04-05
 Eula Accepted: true

The second way to use this options is to specify a number of days. If you specify a negative value, this only lists all updates with release date after today minus the given days.
If you specify a positive value (+10) then wuinstall lists all updates that are 10 days or older.

Example:

WUInstall.exe /search /releasedate +10

This will list all updates which are older than 10 days:

3 Updates found in total, filtering ...
Listing those with release date before 2022-04-26

1. Definition Update for Windows Defender - KB2267602 (Definition 1.173.1428.0)
 Severity: Unknown
 UpdateClassification - Definition Updates
 Product - Windows Defender
 ID: 4f25e1f8-186e-4d0b-b18c-6dab7c081c09
 Releasedate: 2022-03-06
 Eula Accepted: true 

/maxUpdateCount number

This update specifies the maximal number of updates which are handled by a WuInstall call.

If there are more updates available, only the first updates up to the given number are handled.

/updateSize [lt|gt]:Size(KB|MB|GB) | bt:MinSize(KB|MB|GB)-MaxSize(KB|MB|GB

Use this option to filter for updates which have a download size lower, greater or between the specified size.

/maxTotalSize Size(KB|MB|GB) | /maxPayload

This option sets a maximum accumulated size for all updates. WuInstall will iterate through the list of found updates and only those where the accumulated size is lower than specified.

/query_history

Include a list of all previously installed updates on the machines in the XML output file by utilizing the query_history options. If the /xmlout parameter is not specified, this option will not be taken into account.