Windows 10で複数のアプリを一括インストール/更新するなら「winget」

Windows 10で複数のアプリを一括インストール/更新するなら「winget」

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

そこでここでは、アプリのインストールや更新といったパッケージの管理をコマンドラインで行える、Microsoft提供のオープンソースのパッケージ管理ツール「Windows Package Manager(winget)」を紹介します。

Windows 10で複数のアプリを一括インストールするなら「Ninite」
ここでは、Windows環境でさまざまなアプリを一括でインストール・更新できるサービス「Ninite」の使い方をかんたんに紹介します。

動作環境

この記事は、以下の環境で実行した結果を基にしています。他のエディションやバージョンでは、動作結果が異なる場合があることをご了承ください。

ソフトウェアバージョン
Windows 10 Pro 64bit21H2

wingetとは

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

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

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

なお、wingetは現在の最新バージョンのWindows 10や11に標準搭載されています。

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 10で複数のアプリを一括インストール/更新するなら「winget」

アプリをインストールする

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

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

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

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

> winget install -h --force --id Google.Chrome
Windows 10で複数のアプリを一括インストール/更新するなら「winget」

インストール中の画面

なお、アプリによってはインストール時に管理者権限が必要なものがあり、その場合は管理者権限でコマンドプロンプトやPowerShellを起動してから上のコマンドを実行します。

アプリを更新する

次のコマンド実行すると、更新可能なアプリの一覧を確認できます。

winget以外でインストールしたアプリも、更新可能なら一覧に表示してくれるようです。

> winget upgrade

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

> winget upgrade -h --all

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

> winget upgrade -h --id Google.Chrome

アプリをアンインストールする

次のコマンド実行すると、インストール済みアプリの一覧を確認できます。

> winget list

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

> winget uninstall -h --id Google.Chrome

スクリプト化するときは

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

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

@echo off

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

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

wingetをGUIで利用したいときは

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

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

WingetUIの使い方

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 10で複数のアプリを一括インストール/更新するなら「winget」

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

Windows 10で複数のアプリを一括インストール/更新するなら「winget」

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

Windows 10で複数のアプリを一括インストール/更新するなら「winget」

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

Windows 10で複数のアプリを一括インストール/更新するなら「winget」

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

Windows 10で複数のアプリを一括インストール/更新するなら「winget」

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

Windows 10で複数のアプリを一括インストール/更新するなら「winget」

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

Windows 10で複数のアプリを一括インストール/更新するなら「winget」

あとがき

wingetリポジトリからインストールできるアプリは現在3,500を超えており、今後wingetを使ったアプリの管理がより便利になるのではないでしょうか。

お試しあれ。