共用方式為


Get-HotFix

取得安裝在本機或遠端電腦上的 Hotfix。

語法

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

Description

此 Cmdlet 只能在 Windows 平臺上使用。

Get-HotFix Cmdlet 會使用 Win32_QuickFixEngineering WMI 類別來列出安裝在本機電腦或指定遠端電腦上的 Hotfix。

範例

範例 1:取得本機計算機上的所有 Hotfix

Get-HotFix Cmdlet 會取得本機電腦上安裝的所有 Hotfix。

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:從字串篩選的多部計算機取得 Hotfix

Get-HotFix 命令會使用參數來取得安裝在遠端電腦上的 Hotfix。 結果會依指定的描述字串進行篩選。

$hotFixParams = @{
    Description = "Security*"
    ComputerName = "Server01, Server02"
    Credential = "Domain01\admin01"
}
Get-HotFix @hotFixParams

Get-HotFix 使用 Description 參數和包含星號 () 通配符的字串 * 來篩選輸出。 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 參數,以及每部電腦名稱的特定標識碼號碼。 如果計算機未安裝指定的 Hotfix 識別碼,Add-Content Cmdlet 會將計算機名稱寫入檔案。

範例 4:取得本機計算機上的最新 Hotfix

此範例會取得電腦上安裝的最新 Hotfix。

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

Get-HotFix 將物件從管線向下傳送至 Sort-Object Cmdlet。 Sort-Object 依遞增順序排序物件,並使用 Property 參數來評估 InstalledOn 日期的每個。 陣列表示法 [-1] 選取最新的已安裝 Hotfix。

參數

-ComputerName

指定遠端電腦。 輸入遠端電腦的 NetBIOS 名稱、因特網通訊協定 (IP) 位址或完整功能變數名稱 (FQDN)。

未指定 ComputerName 參數時,Get-HotFix 會在本機電腦上執行。

ComputerName 參數不依賴 Windows PowerShell 遠端。 如果您的電腦未設定為執行遠端命令,請使用 ComputerName 參數。

類型:String[]
別名:CN, __Server, IPAddress
Position:Named
預設值:None
必要:False
接受管線輸入:True
接受萬用字元:False

-Credential

指定有權存取計算機並執行命令的用戶帳戶。 預設值為目前的使用者

輸入使用者名稱,例如 User01Domain01\User01,或輸入 Cmdlet 所產生的 Get-Credential 物件。 如果您輸入使用者名稱,系統會提示您輸入密碼。

認證會儲存在 PSCredential 物件中,密碼會儲存為 secureString

注意

如需 SecureString 數據保護的詳細資訊,請參閱 SecureString 有多安全?

類型:PSCredential
Position:Named
預設值:Current user
必要:False
接受管線輸入:False
接受萬用字元:False

-Description

Get-HotFix 會使用 Description 參數來指定 Hotfix 類型。 允許通配符。

類型:String[]
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:True

-Id

篩選特定 Hotfix 識別碼 Get-HotFix 結果。 不接受通配符。

類型:String[]
別名:HFID
Position:0
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

輸入

String

您可以使用管線將包含電腦名稱的字串傳送至此 Cmdlet。

輸出

ManagementObject

此 Cmdlet 會傳回代表電腦上 Hotfix 的物件。

備註

此 Cmdlet 僅適用於 Windows 平臺。

Win32_QuickFixEngineeringWMI 類別 代表套用至目前作系統的小型全系統更新,通常稱為快速修正工程 (QFE) 更新。 這個類別只會傳回元件型服務 (CBS) 所提供的更新。 這些更新不會列在登錄中。 Microsoft Windows Installer (MSI) 或 Windows Update 網站所提供的更新不會由 Win32_QuickFixEngineering傳回。 如需詳細資訊,請參閱 Win32_QuickFixEngineering 類別

不同作系統上的 Get-HotFix 輸出可能會有所不同。