如果 Windows 服务器 (2k3/2k8) 设置为“下载但不安装”更新,是否有办法从命令行进行检查……也许是日志文件或我可以用 powershell 检查的东西,以查看是否有任何更新实际上正在等待安装?我试图避免必须手动登录到每个服务器进行检查,即使他们希望手动拉动“触发器”。我们有一个我可以使用的自动化系统 (CA Autosys) - 只是不确定要让它寻找什么。
答案1
我们可以用IUpdateSearcher::搜索确定尚未安装的更新的数量:
$session = New-Object -com "Microsoft.Update.Session"
$searcher = $objSession.CreateUpdateSearcher()
$results = $objSearcher.search("IsInstalled=0")
$results.updates.count
如果需要通过其他脚本进行安装,请先分配上述变量并添加:
$installer = New-Object -com "Microsoft.Update.Installer"
$installer.Updates = $results.updates
foreach ($update in $objresults)
{
$objInstaller.install()
}
答案2
来自他们的网站 - “WuInstall 是 Windows 的一个命令行工具,它使您能够使用命令行脚本而不是标准 Windows 更新功能以受控方式为某个工作站安装 Windows 更新。”