Get-HotFix
ローカル コンピューターまたはリモート コンピューターにインストールされている修正プログラムを取得します。
構文
Get-HotFix
[[-Id] <String[]>]
[-ComputerName <String[]>]
[-Credential <PSCredential>]
[<CommonParameters>]
Get-HotFix
[-Description <String[]>]
[-ComputerName <String[]>]
[-Credential <PSCredential>]
[<CommonParameters>]
説明
このコマンドレットは、Windows プラットフォームでのみ使用できます。
Get-Hotfix
コマンドレットは、Win32_QuickFixEngineering WMI クラスを使用して、ローカル コンピューターまたは指定されたリモート コンピューターにインストールされている修正プログラムを一覧表示します。
例
例 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
コマンドは、パラメーターを使用して、リモート コンピューターにインストールされている修正プログラムを取得します。 結果は、指定された説明文字列でフィルター処理されます。
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-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 オブジェクトを入力します。 ユーザー名を入力すると、パスワードの入力を求められます。
資格情報は PSCredential オブジェクトに格納され、パスワードは SecureString として格納されます。
Note
SecureString データ保護の詳細については、「 SecureString のセキュリティ保護方法」を 参照してください。
型: | PSCredential |
配置: | Named |
規定値: | Current user |
必須: | 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
コンピューター名を含む文字列をこのコマンドレットにパイプできます。
出力
このコマンドレットは、コンピューター上の修正プログラムを表すオブジェクトを返します。
メモ
このコマンドレットは、Windows プラットフォームでのみ使用できます。
Win32_QuickFixEngineering WMI クラスは、現在のオペレーティング システムに適用される小さなシステム全体の更新プログラムを表します。これは、一般にクイック修正エンジニアリング (QFE) 更新プログラムと呼ばれます。 このクラスは、コンポーネント ベースのサービス (CBS) によって提供される更新プログラムのみを返します。 これらの更新プログラムはレジストリに一覧表示されません。 Microsoft Windows インストーラー (MSI) または Windows Update サイトによって提供される更新プログラムは、 Win32_QuickFixEngineeringによって返されません。 詳細については、 Win32_QuickFixEngineering クラスを参照してください。
Get-HotFix
出力は、オペレーティング システムによって異なる場合があります。
関連リンク
PowerShell