WindowsでPowerShellを使用して更新プログラムを非表示にする方法

Microsoftは、何らかの理由でWindowsをよりユーザーフレンドリーにするために、Windowsの更新プログラムを管理するオプションを減らしました。もはや更新プログラムを非表示にするための簡単なチェックボックスはありませんが、WindowsでPowerShellを使用してWindowsの更新プログラムを非表示にすることができます。
WindowsでのPowerShellへのアクセス
Win + Xを押して、Windows Terminal (Admin)を選択します。管理者権限のあるアカウントがない場合、Windowsの更新プログラムを非表示にできないことに注意してください。
Windows Terminalを使用すると、単一のインターフェースからPowerShellとコマンドプロンプトの両方にアクセスできます。デフォルトではPowerShellに設定されています。別途MicrosoftからPowerShellをインストールすることもできますが、私はTerminalが十分に機能すると感じています。また、Windows Terminalをカスタマイズする方法が大好きです。
PowerShellへのアクセスを制限解除する
デフォルトでは、ユーザーアカウントには制限されたアクセス権があり、PowerShellで外部スクリプトを実行できません。外部スクリプトを実行するには、以下の手順を使用して実行ポリシーを「Unrestricted」に設定する必要があります。
PowerShellに以下のコマンドを入力し、Enterキーを押します。
Set-ExecutionPolicy UnrestrictedAキーを押してEnterを押すことで変更を確認します。これ以降、ユーザーアカウントには制限のないアクセス権があります。

以下のコマンドを使用して、ユーザーアカウントの現在の実行ポリシーを確認できます。以下のスクリーンショットに示すように、私は制限のないアクセス権を持っています。
Get-ExecutionPolicy
実行ポリシーを変更した後は、面倒な更新プログラムを非表示にする準備が整いました。
Windows Update Toolのインストール
デフォルトでは、Windows PowerShellにはWindows Updateを管理するためのコマンドが含まれていません。その代わりに、PSWindowsUpdateモジュールをインストールする必要があります。
PowerShellを開いて、次のように入力します:
Install-Module -Name PSWindowsUpdateYを入力して、PSWindowsUpdateを使用するために必要なNuGetもインストールすることを確認します。これを行うには、インターネットに接続している必要があります。

信頼されていないリポジトリに関する警告が表示された場合は、Yを入力して続行することを確認します。
私のインストールは数分で完了しましたが、多少の違いがある場合があります。その後、画面は通常のPowerShellプロンプトに戻るはずです。
タイトルに基づいてWindowsの更新プログラムを非表示にする
PowerShellを使用して更新プログラムを非表示にする前に、現在保留中の更新プログラムのリストと非表示にする更新プログラムの名前を確認する必要があります。
以下のコマンドを使用して、利用可能なすべてのWindows更新プログラムのリストを取得します。
Get-WUList
非表示にしたい更新プログラムを見つけ、そのタイトルをメモしておきます。KB番号がない場合はタイトルが必要です。KB番号を使用することもできます。(次のセクションを参照。)以下のコマンドを入力し、Enterキーを押してWindowsの更新プログラムを非表示にします。UpdateNameを実際のタイトルに置き換えることを忘れないでください。ただし、引用符はそのままにしてください。
Hide-WindowsUpdate -Title"UpdateName*"タイトルの一部が正しく一意であれば、タイトルの前後にワイルドカード(*)を使用できます。ワイルドカードを使いたくない場合は、完全な更新プログラムのタイトルを入力してください。PowerShellではコピー&ペーストができるので、すべてを手で入力するのではなく、タイトルをコピー&ペーストしてください。

Aキーを押してEnterを押すことで、更新プログラムを非表示にすることを確認します。

このアクションにより、対象のWindows Updateが非表示になります。Statusの下にあるHという文字が非表示を示していることを確認してください。

KB番号に基づいて更新プログラムを非表示にする
また、以下のコマンドを使用してKB記事IDを使用してWindowsの更新プログラムを非表示にすることもできます。もちろん、すべての更新プログラムにKB番号があるわけではないので、その場合はタイトルメソッドを使用する必要があります。KBNumberを非表示にしたい更新プログラムのIDに置き換えることを忘れないでください。
Hide-WindowsUpdate -KBArticleID KBNumber
Aと入力してEnterキーを押して選択を確認します。

Windowsの更新プログラムを再表示する
私のように、時にはWindowsの更新プログラムを一時的に非表示にする必要があるかもしれません。非表示は永久的ではないため、非表示にしたものを再表示する必要があります。
元のGet-WUListは非表示の更新プログラムを表示しないため、PowerShellで異なるコマンドが必要です。
以下のコマンドを使用して更新プログラムのリストを表示します:
Show-WindowsUpdateLを入力してすべてにNoと答えます。そうしないと、各個別の更新プログラムの詳細が表示され、その後に非表示のものを含むすべての更新プログラムのリストが表示されます。

以下のコマンドのいずれかを使用して再表示します。KBNumberを実際のKB番号に、またはUpdateTitleをタイトルに置き換えます。どちらか一方のコマンドのみを使用し、同時に両方を使用しないでください。
Show-WindowsUpdate -KBArticleID KBNumber
Show-WindowsUpdate -Title UpdateTitle
アクションを確認するだけで、更新プログラムが戻ります。

多数の更新プログラムを非表示にしていて、それらを再表示したい場合は、以下のコマンドを使用します:
Show-WindowsUpdateAを入力して、非表示にしたものを含むすべての更新プログラムを表示します。これは、個々のタイトルやKB番号を入力する代わりに、すべての非表示の更新プログラムを一度に復元するための迅速な方法です。
PowerShellを介してできることとできないこと
PowerShellを使用して更新プログラムを非表示にできることに興奮しすぎないでください。これはすべてのWindowsの更新プログラムを停止する方法として見なされるべきではありません。上記の手順に示すように、個々の更新プログラムを一度に非表示にしているだけで、すべての更新プログラムを一度に非表示にするわけではありません。
さらに、新しい更新プログラムがリリースされた場合は、PowerShellを訪れる必要があります。これはすぐに面倒になり、いくつかを見逃す可能性があります。
PowerShellは、まったく望まない特定の更新プログラムを非表示にする方法としてのみ使用するか、更新後にユーザーが問題を報告している特定の更新プログラムに対して無期限の一時停止として使用してください。
すべての更新プログラムを一時停止する必要があり、PowerShellに手動で各更新プログラムを入力したくない場合は、他に2つのオプションがあります。その1つは、設定 -> Windows Update -> 更新プログラムを一時停止です。
Windows Update内でリストされている5週間以上の更新プログラムを一時停止するには、インターネット接続をメーター接続に設定することもできます。デフォルトでは、Windowsはメーター接続で自動的に更新プログラムをダウンロードしません。
設定 -> ネットワークとインターネット -> Wi-Fiまたは設定 -> ネットワークとインターネット -> Ethernetに移動します。

ネットワーク名を選択し、メーター接続をオンに設定します。

新しい更新プログラムに関する通知を受け取りますが、手動でダウンロードする必要があります。これにより、更新プログラムを確認し、PowerShellを介して非表示にしたいものがあるかどうかを確認するための長いウィンドウが得られます。
サードパーティツールを使用してWindowsの更新プログラムを非表示にする
一度に1つの更新プログラムを非表示にするのはフラストレーションがたまります。したがって、PowerShellメソッドが機能しない場合は、WAU Managerを試してください。これは、組み込みのWindows Updateマネージャーの代わりを務め、複数の更新プログラムを一度に非表示にするなど、いくつかのオプションを提供します。
インストールが完了したら、WAU Managerを使用するためのボックスにチェックを入れ、そうでなければWindows Updateが介入してこのアプリで行ったことを上書きします。設定を選択し、今すぐWindowsを更新を押します。これにより、現在利用可能な更新プログラムのリストが表示されます。
非表示にしたい更新プログラムにチェックを入れ、選択したものを非表示にするをクリックします。オプションの更新プログラムは自動的にインストールされないため、非表示にすることはできません。同じプロセスを行い、非表示の更新プログラムを管理を選択して更新プログラムを再表示します。

問題のあるWindowsの更新プログラムをダウンロードした場合は、Windows Updateを介してロールバックを試みてください。また、SetupDiagを使用して問題を修正することもできます。Windows Updateコンポーネントをリセットすることも試みることができます。Windows Updateサービスが消失した場合は、これらの手順を使用して修正してください。
画像クレジット: Unsplash