写一个Windows server 2019判断本次安装的补丁kb是否成功脚本
时间: 2024-02-24 17:54:16 浏览: 30
以下是一个 Windows Server 2019 判断本次安装的补丁 kb 是否成功的脚本示例:
```
@echo off
set "kb=KB1234567"
set "result=failed"
REM 检测 Windows 更新
echo 正在检测 Windows 更新...
echo.
powershell -ExecutionPolicy Bypass -Command "& {Get-WindowsUpdate -Install -Verbose}"
REM 判断 kb 是否安装成功
echo.
echo 正在检测 %kb% 是否安装成功...
echo.
powershell -ExecutionPolicy Bypass -Command "& {Get-HotFix -Id %kb% | Out-String -Stream}"
for /f "delims=" %%i in ('powershell -ExecutionPolicy Bypass -Command "& {Get-HotFix -Id %kb% | Select-Object -Property Description}"') do set "result=%%i"
if "%result%"=="failed" (
echo.
echo %kb% 安装失败,请检查更新历史记录或手动安装...
echo.
pause
) else (
echo.
echo %kb% 安装成功!
echo.
pause
)
```
这个脚本首先设置了要检测的补丁 kb 编号,然后使用 PowerShell 的 `Get-WindowsUpdate` 命令来安装 Windows 更新。接着使用 `Get-HotFix` 命令来检测是否安装了指定的补丁。如果安装成功,脚本会输出 "kb 安装成功!" 的提示信息;如果安装失败,脚本会输出 "kb 安装失败,请检查更新历史记录或手动安装..." 的提示信息。
注意:脚本中的 `powershell` 命令需要在管理员权限下运行。另外,如果需要检测多个补丁,可以将 `set "kb=KB1234567"` 替换为 `set "kb=KB1234567 KB2345678 KB3456789"`。