【2025年版】Wingetの使い方完全ガイド:インストールからアップデート、便利な機能まで

当記事内にアフィリエイトリンクを含みます
wingetアイキャッチ
  • URLをコピーしました!

はじめに

Wingetは、コマンド一つで、Windowsソフトウェアのインストール・更新・アンインストールを自動化できる管理ツールだ。従来は手作業で行っていた各種アプリの導入やアップデートを、wingetを使えばスクリプト化・一括実行できる。Windows 10以降に標準搭載されている。

本記事では、wingetの基本コマンドと推奨オプション、実際に利用中に遭遇しやすい注意点を整理し、安全かつ効率的に運用する手順を示す。

目次

sec.1. Wingetとは?基本概要

WingetはWindows Package Manager(以下winget)の通称であり、Microsoftが公式に提供するCLI(コマンドプロンプトやPowerShell)ベースのパッケージ管理ツールだ。歴史的にはChocolatey(2011年登場)に続き、Microsoftが2020年5月にwingetを正式リリースして後追い開発された。

Windows 10以降に標準搭載済みで、コマンドラインからすぐに利用可能だ。コマンド一つでソフトウェアのインストール・アップデート・アンインストールを行い、手動インストールの手間を省き、環境構築の自動化・スクリプト化を実現する。

Wingetでインストール後は、「アプリと機能」および「プログラムと機能」に表示され、GUI管理との両立が可能だ。Microsoft StoreアプリとMSI/EXEインストーラーの両方をサポートしている。

winget パッケージを検索・閲覧できる主なサイト

  • Microsoft winget-pkgs リポジトリ: https://github.com/microsoft/winget-pkgs/tree/master/manifests  Wingetパッケージの定義情報(マニフェスト)が公式に管理されているGitHub上のリポジトリ。直接的な閲覧サイトではないが、最新かつ公式の情報源
  • winstall (コミュニティサイト): https://winstall.app/ 公式リポジトリの情報を分かりやすいインターフェースで閲覧・検索できるコミュニティサイト
  • winget.run (コミュニティサイト): https://winget.run/ winstallと同様に、公式リポジトリの情報を基にパッケージを検索・閲覧できるコミュニティサイト

sec.2. WingetとChocolateyの成り立ちと違い

Windowsには、Wingetの他にもChocolateyという人気のパッケージ管理ツールがある。どちらもコマンドラインからソフトウェアを管理できるが、いくつかの違いがある。

※Chocolateyの導入記事はこちら。https://maruq.net/chocolatey-install/

項目Chocolateywinget
登場年2011年2020年
導入方法インストールが必要Windows 10以降に標準搭載
管理対象パッケージ多様な形式(EXE/MSI/ZIPなど)に対応。開発者向けツールなどが多い傾向多様な形式(MSI/EXEなど)に対応。Microsoft Storeアプリにも対応
パッケージ数約10,000約8,000
GUI管理連携「プログラムと機能」に表示されない場合がある「アプリと機能」「プログラムと機能」に確実に表示
更新コマンドchoco upgrade all -ywinget upgrade –all

管理情報の一貫性に関する注意

Chocolateyは自前のデータベースにインストール履歴を保持し、choco listやchoco upgradeはそこを参照して動作する。WingetはレジストリやStore情報を参照し、winget list/winget upgradeではそこから取得した情報を使う。

ただし同一アプリをお互いでアンインストールできる場合がある。たとえばChocolateyで導入したMSIベースのアプリを、winget uninstallで削除できることもある。逆に、wingetで入れたアプリをchoco uninstallで消せる場合もあるが、メタデータ不整合で失敗することが多い。

ゆえに、運用ルールは“一貫管理”が鉄則だ。

  • Chocolatey導入分 → choco upgrade/choco uninstall
  • winget導入分 → winget upgrade/winget uninstall

こうしてパッケージごとに管理ツールを明確に分けることで、データ不整合や操作ミスを防げる。

アプリケーションによる使い分けの傾向

wingetが適しているケース

Microsoft製品やストアアプリ、有名フリーソフト(VLC、Firefox、Chrome、Gitなど)を手軽に管理したいとき。OS標準機能として素早く導入・更新したいとき。

Chocolateyが適しているケース

FFmpegやRuby、Makeなど、ややニッチな開発ツールやライブラリをインストールしたいとき。特定バージョンを固定したいとき。社内環境をChocolateyで既に構築しているとき。

これらを組み合わせ、基盤的な開発ツールはChocolatey、エンドユーザー向けのGUIアプリはwingetで管理するハイブリッド運用も有効だと思われる。

sec.3. Wingetを使ってみる—準備編

Wingetを安心して使い始めるために、以下の3点を事前に確認しておく。

Wingetの動作確認: -vまたは--version

PowerShell/コマンドプロンプト/Windows Terminalを開き、次のコマンドを実行する。

winget -v または winget --version

もしWingetが正しくインストールされていれば、バージョン情報が表示される。wingetは、マイクロソフト・ストアのライブラリにある「アプリ・インストーラー」(App Installer)から最新版を適用可能である。

Microsoft Storeソースへの同意

初回に以下のようなメッセージが出ることがある:

'msstore' ソースでは、使用する前に次の契約を表示する必要があります。
Terms of Transaction: https://aka.ms/microsoft-store-terms-of-transaction
ソースが正常に機能するには、現在のマシンの 2 文字の地理的リージョンをバックエンド サービスに送信する必要があります (例: "US")。

すべてのソース契約条件に同意しますか?
[Y] はい  [N] いいえ:

これは「winget がMicrosoft Store をパッケージの取得元(ソース)として使うための利用規約への同意」を求めるもので、wingetで扱うには、[Y] を選んで同意する必要がある。

管理者権限が必要な場合

一部のアプリ(システム全体にインストールされるツールなど)は、管理者権限で実行しないとエラーになる。その場合は、PowerShellやコマンドプロンプトを右クリック →[管理者として実行]で起動して操作する。

以上の準備が整ったら、次節からは実際のインストール/アップグレード/アンインストール操作に進もう。

sec.4. Wingetの基本コマンドをマスターする

wingetによるインストール

パッケージを探す: winget search

インストールしたいソフトウェアがWingetにあるかを探し、そのIDを調べるコマンドだ。

winget search <検索キーワード>

キーワードで検索すると、パッケージの名前、ID、バージョン、ソースなどが一覧表示される。名前とIDは異なる場合が多く、インストール時や更新には、正確なIDを確認するべきだ。

例として、VLCを検索する。すると、ID「VideoLAN.VLC」などが確認できる。

 winget search vlc 

ソフトウェアをインストールする: winget install

検索で見つけたパッケージIDを使ってソフトをPCにインストールするコマンドだ。

winget install <パッケージID> -e
#または
winget install <パッケージID> --exact

間違いを防ぐため、ID指定時には -e または --exact オプションを必ず付ける。これは指定したIDに完全に一致するものだけを対象とするオプションだ。

(補足) Wingetは自動(サイレント)インストールを試みるように設計されているが、使用されるインストーラーの仕様によっては、インストール中に、ユーザーによる操作(例: ライセンス同意画面をクリックする必要があるなど)が必要になったりする場合がある。

バージョンを指定してインストール: -vまたは--version

installコマンドで、通常は最新版が入るが、古いバージョンなどを指定することも可能だ。

インストールしたいバージョンの正確な番号が分からない場合は、前述のセクションで紹介したウェブサイト、winstallや、winget.runで、パッケージの詳細を確認すると、利用可能なバージョン一覧が記されていることもある。

インストールしたいバージョン番号が分かったら、以下のように指定する。

winget install <パッケージID> -v <見つけたバージョン番号> -e
#または
winget install <パッケージID> --version <見つけたバージョン番号> --exact

インストール済みを表示: winget list

PCにインストールされている、Wingetが認識できるソフトの一覧を表示するコマンドだ。

 winget list

winget管理下以外のアプリも含め、PCに登録されている多くのソフトが、一覧表示される。キーワードで絞り込みも可能。

 winget list Microsoft

ソフトウェアをアップデート: winget upgrade

まずは、アップデート可能なソフトウェア(パッケージ)だけを、一覧表示。引数なしで実行する。

winget upgrade

特定のソフトだけ更新する場合は、リストからIDを確認し、IDを指定。-e オプションを推奨。

 winget upgrade <パッケージID> -e

一括アップデート: --all

アップデート可能な全てを一括更新する場合は --all オプション。

winget upgrade --all

【注意】--all を実行する前に必ずwinget upgradeで一覧を確認し、メジャーバージョンアップなど注意が必要なものがないかチェックする。

ソフトウェアをアンインストール: winget uninstall

winget uninstall <パッケージID> -e

インストール時と同様に、Id-e指定で確実にアンインストール。アンインストールしたいソフトのIDは winget list で確認できる。

以上の5つのコマンドがあれば、インストール→一覧表示→アップデート対象確認→アップデート→アンインストールまで、wingetによるソフト管理の基本操作がすべて行える。

sec.5. 便利な機能と知っておくべきこと

Wingetの基本コマンドに加え、PCの環境構築に役立つ機能や、使う上で知っておきたい点がある。

パッケージリストのエクスポートとインポート

現在インストールされているパッケージをリスト化(エクスポート)し、別のPCでまとめてインストール(インポート)できる機能。PC移行などに便利だ。

  • エクスポート: winget export -o <ファイルパス>
    現在のインストール状況をJSONファイルに書き出す。例:winget export -o backup.json
  • インポート : winget import -i <ファイルパス>
    ファイルから読み込み、リストのパッケージをインストール。例:winget import -i backup.json(補足)インポート時、ライセンス同意が必要な場合がある。

この機能は、PowerShellスクリプトに winget install を並べる方法に似ているが、export がインストール済みリストを自動生成する点が大きな違いだ。export/importは「ある時点の状態を再現」するのに適しており、スクリプトは「決まった手順でインストール」するのに向く。

Wingetを使う上での注意点と限界

Wingetは、リポジトリ(アプリの情報が集められている場所)に登録されているパッケージしか管理できないため、PC上の全てのソフト(ドライバー、特定ユーティリティなど)を扱えるわけではない。

  • winget export 時に「インストールされているパッケージはどのソースからも利用できません」と出るのは、Wingetで管理できないアプリのことだ。これらはエクスポートされない。
  • import 時に「エクスポートされたパッケージをインストールするには、使用許諾契約書が必要です」というメッセージが表示されることがある。これは、インポートするパッケージにライセンス同意が必要であることを示している。
  • 他のパッケージマネージャーとの併用: Chocolateyなど、他のツールでインストールしたアプリをWingetで管理すると、それぞれの管理情報にずれが生じ、問題が起きる可能性があるので注意すること。
  • コマンドの出力確認: コマンド実行時のメッセージや出力内容をよく確認する。インストール前など、必要に応じて winget show <パッケージID> で提供元などを確認し、意図したパッケージなのかチェックをする。

sec.6. まとめ

本記事では、Microsoftが提供するコマンドラインベースのパッケージ管理ツール、Wingetの基本的な使い方と、知っておくべき点について解説した。

Wingetは、コマンド一つでソフトウェアのインストール、アップデート、アンインストールといった作業を一元管理できる強力なツールだ。手動でのダウンロードやインストーラーの実行といった手間を省き、PCの環境構築や日々のソフトウェア管理を効率化・自動化できるという大きな利点がある。

search で目的のパッケージを探し、install でインストール、list でインストール済みを確認、upgrade で更新対象を把握・実行、uninstall で不要なものを削除する。これらの基本コマンドによって、Wingetによるソフトウェア管理は十分行えるようになる。さらに export/import 機能を使えば、複数のPCで同じソフトウェア環境を簡単に再現できるはずだ。

もちろん、現時点では全てのソフトウェアがWingetのリポジトリに登録されているわけではなく、管理できないアプリも存在する点で、winget一つで十分というわけではない。

わたし自身の備忘録も兼ねた、この記事で、読者も日々のソフトウェア管理に役立てる一助となれば幸いだ。

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

目次