Windowsで複数のアプリを一括インストールする方法(winget)

Windowsで複数のアプリを一括インストールする方法(winget)

Windowsでアプリをインストールする場合、通常はそれぞれのアプリが配布されているWebサイトからインストーラーをダウンロードしてインストールするという流れになりますが、数が多くなると結構面倒な作業です。

そこでおすすめなのが、Windowsに標準搭載されているwingetツールを使って、コマンドライン操作で複数のアプリを一括インストールしたり更新する方法です。詳しくは、以下をご覧ください。

winget(Windows Package Manager)とは

Windows パッケージ マネージャー | Microsoft Docs

「winget(Windows Package Manager)」は、Microsoftが開発/提供している無料のパッケージ管理ツールで、アプリのインストールや更新、アンインストールといったパッケージ管理全般ををコマンドラインで行うことができます。

wingetでは、スクリプトを使って多数のアプリを一括でインストール/更新することができ、いちいち配布先からパッケージをダウンロードしてインストールする面倒がなく、手早く環境構築を行いたいときに便利なツールです。

なお、wingetは現在の最新バージョンのWindows 10や11に標準搭載されており、wingetリポジトリからインストールできるアプリは現在3,500を超えており、メジャーなアプリはほぼ網羅しています。

wingetの使い方

wingetはコマンドラインツールなので「コマンドプロンプト」もしくは「PowerShell」から利用します。

wingetの書式は次のとおりで、基本的にはサブコマンドで何をするかを指定します。

> winget  <サブコマンド> <サブコマンドオプション>

以降では、基本的な使い方として、アプリの検索・インストール・更新・アンインストール方法について紹介します。

アプリの検索

インストールするアプリを探すときは「winget show」または「winget search」を利用します。

「winget show」では、インストール可能なアプリの一覧を取得できます。

> winget show > D:¥wingetlist.txt

なお、アプリの一覧は3千行を超えるため、上のようにテキストファイルに出力してから、テキストエディタで開いて検索するほうが良いでしょう。

アプリ名をもとに検索したいときは「winget search」を利用します。

たとえば、Webブラウザ「Google Chrome」を検索したいときは、次のように実行します。

> winget search "Google Chrome"

すると、以下のように検索結果が表示されます。

Windowsで複数のアプリを一括インストールする方法(winget)

アプリのインストール

インストールしたいアプリが見つかったら、以下のコマンドを実行してアプリをインストールします。

> winget install -h --force --id <アプリケーションID>

「-h」オプションは、サイレントインストールを指定しており、アプリケーションIDは、アプリを検索したときに確認できます。

たとえば「Google Chrome」をインストールするときは、次のように実行します。

> winget install -h --force --id Google.Chrome
Windowsで複数のアプリを一括インストールする方法(winget)

インストール中の画面

なお、アプリによってはインストール時に管理者権限が必要なものがあり、その場合はインストール時にユーザーアカウント制御画面が表示されます。

インストール時にユーザーアカウント制御画面を表示したくない場合は、コマンドプロンプトやPowerShellを管理者として起動してから上のコマンドを実行します。

アプリの更新

インストール済みのアプリで更新可能なアプリを確認したいときは、以下のコマンドを実行します。なお、winget以外でインストールしたアプリも、更新可能なら一覧に表示してくれます。

> winget upgrade

更新可能なアプリを一括更新するときは、以下のコマンドを実行します。

> winget upgrade --all

特定のアプリのみを更新したいときは、以下のようにアプリケーションIDを指定してコマンドを実行します。

> winget upgrade --id Google.Chrome

インストール済みアプリの確認

インストール済みのアプリを確認したいときは、以下のコマンド実行することで、一覧で確認できます。

> winget list

アプリのアンインストール

アプリをアンインストールするときは、アプリケーションIDを指定して、以下のようにコマンドを実行します。

> winget uninstall --id Google.Chrome

スクリプト化

wigetを利用して、複数のアプリを一括インストールするときは、バッチファイルなどでスクリプト化するのがおすすめです。

以下に、サンプルコードを記載するのでご参考までに。

@echo off

REM Powertoys
winget install --id Microsoft.Powertoys
if %ERRORLEVEL% NEQ 0 Echo install failure.

REM Terminal
winget install --id Microsoft.WindowsTerminal
if %ERRORLEVEL% NEQ 0 Echo install failure.

wingetをGUIで使いたいときは

wingetはコマンドラインツールのため、コマンド操作に慣れていないと使いにくいと感じることもあるでしょう。

そのようなときは「WingetUI」を利用することで、wingetをGUI画面で操作できるようになり、コマンド操作に不慣れでも、wingetを利用したアプリのインストールや更新がやりやすくなります。

WingetUIは、以下のGitHubのページからからインストーラー「WingetUI.Installer.exe」をダウンロードしてインストールします。

GitHub - martinet101/WingetUI: WingetUI Store: a GUI Store for the most common cli package managers, sych as Winget and Scoop

Windowsで複数のアプリを一括インストールする方法(winget)

WingetUIをインストールしたら、スタートメニューのプログラム一覧などから実行すると、以下のような画面が表示されます。

Windowsで複数のアプリを一括インストールする方法(winget)

アプリをインストールするときは「Discover Software」タブを選択して、検索ボックスにアプリ名などを入力することで、該当するアプリが一覧表示されるので、インストールしたいアプリを右クリックして、メニューから「Install」を選択することでインストールできます。

Windowsで複数のアプリを一括インストールする方法(winget)

また、右クリックメニューから「Show info」を選択すると、次のような画面が表示され、インストールするバージョンを指定することも可能です。

Windowsで複数のアプリを一括インストールする方法(winget)

インストール済みアプリをアップデートするときは「Software updates」タブを選択すると、アップデート可能なアプリが一覧表示されるので、アップデートするアプリを右クリックして、メニューから「Update」を選択します。

Windowsで複数のアプリを一括インストールする方法(winget)

また「Upgrade all packages」をクリックすれば、アップデート可能なアプリをまとめてアップデートすることもできます。

Windowsで複数のアプリを一括インストールする方法(winget)

アプリをアンインストールするときは「Installed applications」タブを選択することで、インストール済みアプリが一覧表示されるので、アンインストールしたいアプリをダブルクリックすることで、アンインストールできます。

Windowsで複数のアプリを一括インストールする方法(winget)

あとがき

wingetは、たくさんのPCに同じアプリやツールをインストールしなければならいないようなケースでとても重宝します。ご活用あれ。