Windows システムは、システムのパフォーマンスを向上させるために最新のパッチで定期的に更新されます。 Microsoft は、Windows コンピューティング エクスペリエンスを強化するための無料更新サービスの一環として、このサービスとパッチをリリースします。これらの更新はシステム設定に基づいて自動的にインストールされ、エンドユーザーからの入力が必要になることはほとんどありません。無料のアップデートは、エラーを効果的に修正するソフトウェアをリリースする Windows のメンテナンスとサポートの一部です。安全なコンピューティングを確保するために、Windows Update は、最新のセキュリティ パッチ、修正プログラム、バグ修正によってシステムが最新の状態であることを保証します。
ユーザーは、PowerShell やコマンド ラインを使用して更新履歴を確認することも、Windows 設定ユーザー インターフェイスを通じて更新履歴を確認することもできます。この記事では、PowerShell などのタスク自動化および構成管理ツールの 1 つを使用して、Windows Update イベントのすべての履歴を一覧表示する方法について説明します。また、ソフトウェア パッチの一部としてダウンロードされる現在のすべてのホットフィックスまたはクイック フィックス エンジニアリング アップデートに関する情報を取得することもできます。
PowerShell を使用して Windows 更新履歴を確認する
[スタート] メニューに移動し、Windows PowerShell を検索します。それを右クリックし、「管理者として実行」をクリックします。
コマンド ラインで、インストールされているホットフィックスをその ID、インストール先の情報、説明などとともに一覧表示する次のコマンドを記述します。
wmic qfe list
次のコマンドを入力して、ホットフィックスとそれに関連する説明を一覧表示することもできます。
get-wmiobject -class win32_quickfixengineering
さらに、更新履歴を求めるクエリをコンピュータに書き込み、Windows システム上の一致するレコードのリストへのポインタを返すこともできます。クエリは、結果コードの WUA 履歴イベントを名前に変換し、最後と最新の 50 件の WUA 履歴を取得するいくつかの関数を定義することにより、PowerShell で WUA 履歴を一覧表示するように作成されます。オブジェクトを変更して、更新されたイベントの過去の履歴を任意の数だけリストすることができます。
# Convert Wua History ResultCode to a Name # 0, and 5 are not used for history # See https://msdn.microsoft.com/en-us/library/windows/desktop/aa387095(v=vs.85).aspx function Convert-WuaResultCodeToName { param( [Parameter(Mandatory=$true)] [int] $ResultCode ) $Result = $ResultCode switch($ResultCode) { 2 { $Result = "Succeeded" } 3 { $Result = "Succeeded With Errors" } 4 { $Result = "Failed" } } return $Result } function Get-WuaHistory { # Get a WUA Session $session = (New-Object -ComObject 'Microsoft.Update.Session') # Query the latest 1000 History starting with the first recordp $history = $session.QueryHistory("",0,50) | ForEach-Object { $Result = Convert-WuaResultCodeToName -ResultCode $_.ResultCode # Make the properties hidden in com properties visible. $_ | Add-Member -MemberType NoteProperty -Value $Result -Name Result $Product = $_.Categories | Where-Object {$_.Type -eq 'Product'} | Select-Object -First 1 -ExpandProperty Name $_ | Add-Member -MemberType NoteProperty -Value $_.UpdateIdentity.UpdateId -Name UpdateId $_ | Add-Member -MemberType NoteProperty -Value $_.UpdateIdentity.RevisionNumber -Name RevisionNumber $_ | Add-Member -MemberType NoteProperty -Value $Product -Name Product -PassThru Write-Output $_ } #Remove null records and only return the fields we want $history | Where-Object {![String]::IsNullOrWhiteSpace($_.title)} | Select-Object Result, Date, Title, SupportUrl, Product, UpdateId, RevisionNumber }
次に、次のコマンドを入力して、結果の日付、更新タイトル、サポート URL、および更新 ID を含む更新履歴イベントを取得します。
# Get all the update History, formatted as a table Get-WuaHistory | Format-Table
それだけです。
コマンドプロンプトを使用してWindowsの更新履歴を確認する
管理者特権の CMD で次のコマンドを実行します。
wmic qfe list
特定の更新を見つけるには、KB 番号を使用できます (例: KB1234567)。次を使用します。
wmic qfe | find "1234567"
PowerShell で Windows Update を一覧表示するにはどうすればよいですか?
Win + S を使用して Windows Search を開き、「PowerShell」と入力します。見つけたら起動してください。それが完了したら、次のコマンドを実行します。 Windowsターミナルでも利用できます。
wmic qfe list
Windows 11 では PowerShell が必要ですか?
PowerShell は強力なクロスプラットフォーム ツールであり、スクリプト コマンドを使用してシステム設定を変更し、タスクを自動化する場合は、Windows 11 で PowerShell が必要です。Windows 11 の利点は、PowerShell コマンドを次の環境で実行できることです。Windowsターミナル同じように。