【问题标题】:How to get all installed Windows updates names and KB numbers with PowerShell?如何使用 PowerShell 获取所有已安装的 Windows 更新名称和 KB 编号?
【发布时间】:2021-08-04 19:39:44
【问题描述】:

我需要使用 PowerShell 获取所有已安装的 Windows 更新。

结果应包含更新名称、KB 编号、CVE id 和严重性等级。 我尝试了下一个脚本: Get-HotFix, wmic qfe list, Get-WmiObject -Class Win32_QuickFixEngineering。 但它只返回 KB 数字。 我还尝试从下一个脚本结果中过滤安装的更新: Get-ChildItem -Path 'Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages'。 但此脚本并非返回所有更新。

下一个脚本也不会返回所有已安装的 Windows 更新:

    $Searcher = $Session.CreateUpdateSearcher()
    $HistoryCount = $Searcher.GetTotalHistoryCount()
    $Updates = $Searcher.Search("IsPresent=1").Updates
    $Updates | ForEach-Object {$_}

我没有更多的想法,我将不胜感激。

【问题讨论】:

  • 怎么样:(Get-Package -ProviderName msu -Force | Sort-Object Name -Descending).Name?
  • @AbrahamZinala 不幸的是,它并没有返回所有更新,但感谢您的帮助。
  • 您到底在寻找什么?你怎么知道它不会返回所有更新?
  • @Abraham Zinala 我将返回的结果与“控制面板”的“卸载更新”中的更新列表进行比较。理想情况下,我需要所有这些更新,但似乎无法访问((
  • 然后运行Get-Package -Force

标签: windows powershell updates


【解决方案1】:

查看 PowerShell 库中的 PSWindowsUpdate 模块。此模块中的 Get-WUHistory cmdlet 可能包含您需要的一切。

【讨论】:

  • 它返回更多字段,但又不是所有更新,但谢谢。
猜你喜欢
  • 2019-03-12
  • 2015-11-25
  • 2018-03-07
  • 1970-01-01
  • 2014-07-25
  • 1970-01-01
  • 1970-01-01
  • 2019-08-09
  • 1970-01-01
相关资源
最近更新 更多