Get-HotFix
ローカル コンピューターまたはリモート コンピューターにインストールされている修正プログラムを取得します。
構文
Get-HotFix
[[-Id] <String[]>]
[-ComputerName <String[]>]
[-Credential <PSCredential>][<CommonParameters>]
Get-HotFix
[-Description <String[]>]
[-ComputerName <String[]>]
[-Credential <PSCredential>][<CommonParameters>]
説明
Get-Hotfix
コマンドレットは、ローカル コンピューターまたは指定されたリモート コンピューターにインストールされている修正プログラムまたは更新プログラムを取得します。 更新プログラムは、Windows Update、Microsoft Update、Windows Server Update Services、または手動でインストールできます。
例
例 1: ローカル コンピューター上のすべての修正プログラムを取得する
Get-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: 文字列でフィルター処理された複数のコンピューターから修正プログラムを取得する
Get-Hotfix
コマンドは、パラメーターを使用して、リモート コンピューターにインストールされている修正プログラムを取得します。 結果は、指定された説明文字列でフィルター処理されます。
PS> Get-HotFix -Description Security* -ComputerName Server01, Server02 -Credential Domain01\admin01
例 3: 更新プログラムがインストールされているかどうかを確認し、コンピューター名をファイルに書き込む
この例のコマンドは、特定の更新プログラムがインストールされているかどうかを確認します。 更新プログラムがインストールされていない場合、コンピューター名はテキスト ファイルに書き込まれます。
PS> $A = Get-Content -Path ./Servers.txt
PS> $A | ForEach-Object { if (!(Get-HotFix -Id KB957095 -ComputerName $_))
{ Add-Content $_ -Path ./Missing-KB957095.txt }}
$A
変数には、テキスト ファイルから Get-Content
によって取得されたコンピューター名が含まれています。
$A
内のオブジェクトは、パイプラインから ForEach-Object
に送信されます。
if
ステートメントでは、Id パラメーターと各コンピューター名の特定の ID 番号を持つ Get-Hotfix
コマンドレットを使用します。 指定した修正プログラム ID がコンピューターにインストールされていない場合、Add-Content
コマンドレットはコンピューター名をファイルに書き込みます。
例 4: ローカル コンピューターで最新の修正プログラムを取得する
この例では、コンピューターにインストールされている最新の修正プログラムを取得します。
(Get-HotFix | Sort-Object -Property InstalledOn)[-1]
Get-Hotfix
、パイプラインの下にあるオブジェクトを Sort-Object
コマンドレットに送信します。
Sort-Object
は、オブジェクトを昇順で並べ替え、Property パラメーターを使用して、各 InstalledOn 日付を評価します。 配列表記 [-1]
は、最新のインストール済み修正プログラムを選択します。
パラメーター
-ComputerName
リモート コンピューターを指定します。 NetBIOS 名、インターネット プロトコル (IP) アドレス、またはリモート コンピューターの完全修飾ドメイン名 (FQDN) を入力します。
ComputerName パラメーターが指定されていない場合、Get-Hotfix
はローカル コンピューター上で実行されます。
ComputerName パラメーターは、Windows PowerShell リモート処理に依存しません。 リモート コマンドを実行するようにコンピューターが構成されていない場合は、ComputerName パラメーターを使用します。
型: | String[] |
Aliases: | CN, __Server, IPAddress |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Credential
コンピューターにアクセスしてコマンドを実行するアクセス許可を持つユーザー アカウントを指定します。
User01、Domain01\User01などのユーザー名を入力するか、Get-Credential
コマンドレットによって生成された PSCredential オブジェクトを入力します。 ユーザー名を入力すると、パスワードの入力を求められます。
Credential パラメーターが指定されていない場合、Get-Hotfix
は現在のユーザーを使用します。
型: | PSCredential |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Description
Get-HotFix
では、Description パラメーターを使用して修正プログラムの種類を指定します。 ワイルドカードを使用できます。
型: | String[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | True |
-Id
特定の修正プログラム ID の Get-HotFix
結果をフィルター処理します。 ワイルドカードは使用できません。
型: | String[] |
Aliases: | HFID |
配置: | 0 |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
String
1 つ以上のコンピューター名を Get-HotFix にパイプできます。
出力
Get-HotFix
は、コンピューター上の修正プログラムを表すオブジェクトを返します。
メモ
Win32_QuickFixEngineeringWMI クラス は、現在のオペレーティング システムに適用される小規模なシステム全体の更新プログラム (一般にクイック修正エンジニアリング (QFE) 更新プログラムと呼ばれます) を表します。 このクラスは、コンポーネント ベースのサービス (CBS) によって提供される更新プログラムのみを返します。 これらの更新プログラムはレジストリに表示されません。 Microsoft Windows インストーラー (MSI) または Windows Update サイトによって提供される更新プログラムは、Win32_QuickFixEngineeringによって返されません。 詳細については、「Win32_QuickFixEngineering クラスの」を参照してください。
Get-HotFix
出力は、オペレーティング システムによって異なる場合があります。