Generate Windows Update PowerShell commands for local and remote computers. PSWindowsUpdate, usoclient, wuauclt, remote patching by computer name or IP, update history, and WSUS settings.
Windows Update PowerShell commands enable system administrators to manage Windows updates programmatically — querying available updates, installing patches, scheduling maintenance windows, and generating compliance reports across fleets of machines. While Windows Update settings can be configured through the GUI or Group Policy, PowerShell provides the automation capabilities needed for enterprise-scale patch management.
This tool generates PowerShell commands and scripts for common Windows Update operations, using the PSWindowsUpdate module and built-in Windows Update cmdlets.
| Module | Source | Use Case |
|---|---|---|
| PSWindowsUpdate | PowerShell Gallery | Full-featured WU management (install, download, hide, report) |
| WindowsUpdateProvider | Built-in (Server) | Basic update scanning and installation on Windows Server |
| WSUS cmdlets | RSAT feature | Managing Windows Server Update Services infrastructure |
| Intune Graph API | Microsoft Graph | Cloud-managed device update compliance via PowerShell |
| Command | Purpose |
|---|---|
| Get-WindowsUpdate | List available updates |
| Install-WindowsUpdate | Download and install updates |
| Get-WUHistory | View update installation history |
| Hide-WindowsUpdate | Suppress specific updates |
| Get-WUServiceManager | List configured update sources |
| Remove-WindowsUpdate | Uninstall specific updates |
PSWindowsUpdate is a PowerShell module that provides comprehensive Windows Update management. Install it with: Install-Module -Name PSWindowsUpdate -Force. It supports checking for updates, installing specific KBs, managing WSUS, and scheduling reboots.
usoclient is the modern Update Session Orchestrator client introduced in Windows 10, while wuauclt is the legacy Windows Update AutoUpdate Client. Use usoclient for Windows 10/11 and wuauclt for older systems. usoclient commands include StartScan, StartDownload, and StartInstall.
Use Get-WUHistory from PSWindowsUpdate module, or query WMI with Get-WmiObject -Class Win32_QuickFixEngineering. You can also use Get-HotFix for installed hotfixes and systeminfo with findstr KB for a quick list of installed KBs.
Yes, use Remove-WindowsUpdate -KBArticleID KB5001234 from PSWindowsUpdate, or wusa.exe /uninstall /kb:5001234 /quiet. You can also use DISM: dism /online /remove-package /packagename:Package_for_KB5001234. Always create a restore point first.
Use the Remote Computer(s) target in the Command Builder, or the Remote Computers presets. Enter the computer name or IP address and the tool generates the right command. For installs, the tool uses Invoke-WUJob from the PSWindowsUpdate module because Windows blocks direct remote update installs. Requirements: WinRM enabled on the target (Enable-PSRemoting -Force), administrator rights, and the PSWindowsUpdate module installed on the target machine.