BFT名古屋 TECH BLOG

日々の業務で得た知識を所属するエンジニアたちがアウトプットしていきます。

Windows Updateで適用されたKBを確認する方法!!

f:id:bftnagoya:20220119135145j:plain

はじめに

こんにちは! 今さらになってDa-iCEの「CITRUS」、Novelbrightの「ツキミソウ」にはまっている時代遅れなBFT名古屋支店 いけちゃんまんです。

今回はWindows Updateによって適用されたKBの確認方法のお話です。今回も前回の記事(Windows FirewallのGUI、CUIでの出力方法)同様複数の方法で実施いたします。そのため出力方法は自分が反映しやすいような形で行ってください。
今回の記事もWindows初心者向けの記事となります。

KBの確認方法

今回は主にCUIでKBを確認する方法を記載いたします。(最初に少しGUIで確認する方法も記載します。)
私はKBを確認する方法はCUIで確認する方がおすすめですが、欲しい情報によってはGUIが適切な場合もあります。ここは自分が欲しい形に合わせて決めてください。

GUIでのKB確認方法

まずGUIでの確認方法を記載します。
この確認方法おすすめでないところは、テキストデータで出力ができない点です。
ですが、パッケージの名前まで確認したい場合はこの方法でないと確認できません。

手順

Windowsボタン>設定をクリックする
f:id:bftnagoya:20220119114617j:plain
②更新とセキュリティをクリックする
f:id:bftnagoya:20220119114634j:plain
③更新の履歴を表示するをクリックする
f:id:bftnagoya:20220119114656j:plain
f:id:bftnagoya:20220119114708j:plain

CUIでのKB確認方法

次にCUIでの確認方法を記載します。
私が使用したことがある2つの説明をしたいと思います。この2つのコマンドはPowerShellコマンドプロンプト両方で実行可能です。
1.wmicコマンド
2.systeminfoコマンド
私はより詳しい情報が出るため、1.のコマンドよく使用します。

手順

PowerShell(コマンドプロンプトでも可能)を管理者権限で起動する
②以下のコマンドを実行する
(1)wmicの場合
$ wmic qfe list >> C:\hoge\KB_list.txt
またCSV形式、HTML形式で出力したい場合は以下のコマンドに修正する
$ wmic qfe list /format:csv >> C:\hoge\KB_list.csv
$ wmic qfe list /format:htable >> C:\hoge\KB_list.html

(2)systeminfoの場合
$ systeminfo >> C:\hoge\systeminfo_list.txt
※赤字の部分は任意に修正
f:id:bftnagoya:20220119114952j:plain

コマンドによる出力結果の違い

(1)、(2)ではコマンドが違うため、当然出力結果が違います。
(1)、(2)の出力結果はこのような違いがあります。(systeminfoはKBの部分を抜粋)
f:id:bftnagoya:20220119132215j:plain
f:id:bftnagoya:20220119132226j:plain
wmicコマンドは以下の内容を取得したい際に使います。
・適用されたKB
・ユーザ
・アップデートの種類
systeminfoコマンドは以下の内容を取得したい際に使います。(途中省略)
・ホスト名
・OS名
・OSバージョン
  ・
  ・
・ホットフィックス(KBがわかるもの)
・ネットワークカード
Hyper-V の要件
上記で記載したようにKBの内容を詳しく取得したい場合はwmicを使い、OSの情報も一括でとりたい場合はsysteminfoを使用するのが良いと思います。
これもまた自分が欲しい形に出力することが大切です。

PowerShell限定のKB取得方法

最後にPowerShellのみのKB取得方法を記載いたします。
Get-HotFixコマンドでKBが取得できます。

実際にコマンドを実行してみた

PowerShellを管理者権限で起動する
②以下のコマンドを実行する
$ Get-HotFix >> C:\hoge\hotfix.txt
※赤字の部分は任意に修正
f:id:bftnagoya:20220126163734j:plain
f:id:bftnagoya:20220126163750j:plain

また、GUIで確認したようにパッケージの名前まで確認したい場合は関数を用意することにより取得することができます。
PowerShellを管理者権限で起動する
②以下のコマンドを実行し、関数を準備する

Function Get-MicrosoftUpdates  
{   
  Param(  
        $NumberOfUpdates,  
        [switch]$all  
       )  
  $Session = New-Object -ComObject Microsoft.Update.Session  
  $Searcher = $Session.CreateUpdateSearcher()  
  if($all)  
    {  
      $HistoryCount = $Searcher.GetTotalHistoryCount()  
      $Searcher.QueryHistory(1,$HistoryCount)  
    }  
  Else { $Searcher.QueryHistory(1,$NumberOfUpdates) }  
} # Get-MicrosoftUpdates

③以下のコマンドを実行する $ Get-MicrosoftUpdates -all >> C:\hoge\allKB_list.txt
※赤字の部分は任意に修正
f:id:bftnagoya:20220126163814j:plain
f:id:bftnagoya:20220126163825j:plain

まとめ

今回はWindows Updateで適応されるKBの確認方法の記事でした。
やはりいろいろ出力方法があるものは自分が欲しい形を考えることが大切です。
今回も記事を読んでいただきありがとうございました。