需安装PSWindowsUpdate模块才能精细控制Windows更新,包括检查、下载、安装、隐藏及卸载更新,所有操作均须以管理员权限运行PowerShell并按步骤执行对应命令。

如果您希望在Windows系统中通过PowerShell精细控制更新行为,例如手动检查、下载、安装或隐藏特定更新,则需借助PSWindowsUpdate模块。以下是执行这些操作的具体步骤:
一、安装PSWindowsUpdate模块
PSWindowsUpdate并非Windows内置模块,必须从PowerShell Gallery手动安装,且需以管理员权限运行PowerShell才能完成注册与部署。
1、以管理员身份启动PowerShell。
2、执行命令:Set-ExecutionPolicy RemoteSigned -Scope CurrentUser,允许本地脚本运行。
3、执行命令:Install-Module PSWindowsUpdate -Force -AllowClobber,强制安装并覆盖可能存在的旧版本。
4、执行命令:Import-Module PSWindowsUpdate,加载模块至当前会话。
二、检查可用更新
该操作将向Windows Update服务器发起查询,获取当前适用于本机的全部待安装更新列表(含常规更新、驱动更新、可选更新等),不触发下载或安装。
1、运行命令:Get-WindowsUpdate -MicrosoftUpdate -AcceptAll,启用Microsoft Update服务并自动接受所有许可协议。
2、如需仅列出关键更新,添加参数:-Category "Critical Updates"。
3、若要排除驱动程序更新,追加参数:-NotCategory "Drivers"。
三、下载并安装指定更新
此方法支持对筛选后的更新进行分步控制:先下载到本地缓存,再择机安装,便于离线部署或规避重启干扰。
1、执行命令:Get-WindowsUpdate -Install -AcceptAll -IgnoreReboot,自动下载并安装所有适用更新,但跳过立即重启。
2、若仅安装已缓存更新(避免重复下载),使用:Install-WindowsUpdate -AcceptAll -IgnoreReboot。
3、为单个KB编号更新执行精准安装,运行:Install-WindowsUpdate -KBArticleID KB5034441 -AcceptAll。
四、隐藏不希望安装的更新
隐藏操作会使Windows Update客户端永久忽略指定更新,适用于存在兼容性问题或策略禁止安装的补丁,该状态保存于系统策略数据库中。
1、先获取目标更新对象,运行:$update = Get-WindowsUpdate | Where-Object {$_.KB -eq "KB5034441"}。
2、执行隐藏命令:$update | Hide-WindowsUpdate。
3、验证是否生效,再次运行:Get-WindowsUpdate -IsHidden,返回结果中应包含该KB条目。
五、卸载已安装的更新
当某次更新引发系统异常时,可通过此方式回滚至更新前状态,操作依赖于Windows内置的wusa.exe工具及补丁原始安装包信息。
1、列出最近安装的更新,运行:Get-HotFix | Sort-Object InstalledOn -Descending | Select-Object HotFixID,Description,InstalledOn -First 10。
2、根据HotFixID执行卸载,例如:wusa /uninstall /kb:5034441 /quiet /norestart。
3、若需静默卸载并强制重启,将参数改为:/quiet /forcerestart。










