当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 获取修补程序 (Microsoft.PowerShell.Management)

作者:精品下载站 日期:2024-12-14 02:12:31 浏览:17 分类:玩电脑

获取修补程序 (Microsoft.PowerShell.Management)


Get-HotFix

模块 :Microsoft.PowerShell.Management

获取本地或远程计算机上安装的修补程序。

句法

Get-HotFix
   [[-Id] <String[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential>]
   [<CommonParameters>]
Get-HotFix
   [-Description <String[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential>]
   [<CommonParameters>]

描述

此 cmdlet 仅适用于 Windows 平台。

Get-Hotfix cmdlet 使用 Win32_QuickFixEngineering WMI 类列出本地计算机或指定远程计算机上安装的修补程序。

示例

示例 1:获取本地计算机上的所有修补程序

Get-Hotfix cmdlet 获取本地计算机上安装的所有修补程序。

Get-HotFix

Source         Description      HotFixID      InstalledBy          InstalledOn
------         -----------      --------      -----------          -----------
Server01       Update           KB4495590     NT AUTHORITY\SYSTEM  5/16/2019 00:00:00
Server01       Security Update  KB4470788     NT AUTHORITY\SYSTEM  1/22/2019 00:00:00
Server01       Update           KB4480056     NT AUTHORITY\SYSTEM  1/24/2019 00:00:00

示例 2:从按字符串过滤的多台计算机获取修补程序

Get-Hotfix 命令使用参数来获取远程计算机上安装的修补程序。结果通过指定的描述字符串进行过滤。

Get-HotFix -Description Security* -ComputerName Server01, Server02 -Credential Domain01\admin01

Get-Hotfix 使用 Description 参数和包含星号 (*) 通配符的字符串 Security 过滤输出。 ComputerName 参数包含以逗号分隔的远程计算机名称字符串。 Credential 参数指定有权访问远程计算机和运行命令的用户帐户。

示例 3:验证是否安装了更新并将计算机名称写入文件

此示例中的命令验证是否安装了特定更新。如果未安装更新,计算机名称将写入文本文件。

$A = Get-Content -Path ./Servers.txt
$A | ForEach-Object { if (!(Get-HotFix -Id KB957095 -ComputerName $_))
    { Add-Content $_ -Path ./Missing-KB957095.txt }}

$A 变量包含通过 Get-Content 从文本文件获取的计算机名称。 $A 中的对象沿着管道发送到 ForEach-Objectif 语句使用 Get-Hotfix cmdlet,其中包含 Id 参数以及每个计算机名称的特定 ID 号。如果计算机未安装指定的修补程序 ID,Add-Content cmdlet 会将计算机名称写入文件。

示例 4:获取本地计算机上的最新修补程序

此示例获取计算机上安装的最新修补程序。

(Get-HotFix | Sort-Object -Property InstalledOn)[-1]

Get-Hotfix 将对象沿着管道发送到 Sort-Object cmdlet。 Sort-Object 按升序对对象进行排序,并使用 Property 参数评估每个 InstalledOn 日期。数组符号 [-1] 选择最近安装的修补程序。

参数

-ComputerName

指定远程计算机。键入远程计算机的 NetBIOS 名称、Internet 协议 (IP) 地址或完全限定域名 (FQDN)。

如果未指定 ComputerName 参数,Get-Hotfix 将在本地计算机上运行。

ComputerName 参数不依赖于 Windows PowerShell 远程处理。如果您的计算机未配置为运行远程命令,请使用ComputerName 参数。

类型 :

String[]

别名:

CN, __Server, IPAddress

位置:

命名

默认值:

None

必需的:

False

接受管道输入:

True

接受通配符:

False

-Credential

指定有权访问计算机和运行命令的用户帐户。默认是当前用户

输入用户名,例如 User01Domain01\User01,或输入由 Get-Credential cmdlet。如果您键入用户名,系统会提示您输入密码。

凭证存储在 PSCredential 对象中,密码存储为 SecureString。

笔记

有关 SecureString 数据保护的更多信息,请参阅 SecureString 的安全性如何?。

类型 :

PS凭证

位置:

命名

默认值:

当前用户

必需的:

False

接受管道输入:

False

接受通配符:

False

-Description

Get-HotFix 使用Description 参数指定修补程序类型。允许使用通配符。

类型 :

String[]

位置:

命名

默认值:

None

必需的:

False

接受管道输入:

False

接受通配符:

True

-Id

过滤特定修补程序 ID 的 Get-HotFix 结果。不接受通配符。

类型 :

String[]

别名:

HFID

位置:

0

默认值:

None

必需的:

False

接受管道输入:

False

接受通配符:

False

输入

字符串

您可以通过管道将包含计算机名称的字符串传递给此 cmdlet。

输出

管理对象

此 cmdlet 返回表示计算机上的修补程序的对象。

笔记

此 cmdlet 仅在 Windows 平台上可用。

Win32_QuickFixEngineering WMI 类表示应用于当前操作系统的小型系统范围更新,通常称为快速修复工程 (QFE) 更新。此类仅返回由基于组件的服务 (CBS) 提供的更新。这些更新未在注册表中列出。 Win32_QuickFixEngineering 不会返回 Microsoft Windows Installer (MSI) 或 Windows Update 站点提供的更新。有关详细信息,请参阅 Win32_QuickFixEngineering 类。

Get-HotFix 输出可能因不同操作系统而异。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯