Windows には Microsoft の提供するパッケージ管理システムとして winget が用意されている。winget を利用すると PowerShell などからコマンドを利用して各種ソフトウェアのインストールやアップデートなどを行うことができる。
Windows では歴史的にパッケージ管理システムを利用しない期間が長く、利用するソフトウェアは個別にインストールしている場合が多かった。winget を利用すれば一括で管理できるようになる。PC の初期セットアップ時に必要なソフトを一括でインストールしたり、アップデートを一括で行うことができる。
このページでは winget の利用方法を紹介しよう。
winget のインストール
winget は Windows 11 であれは標準で利用可能となっている。もし利用できない場合には以下の記事を参照してほしい。
Windows11 で Winget が利用できない時の対処方法 | Lonely Mobilerwinget でソフトウェアをインストールする方法
winget でソフトウェアのインストールを行う前に、まずは winget search コマンドを利用して、インストールしたいソフトウェアの ID を調べよう。
例えばエディターの vim をインストールしたい場合は以下のように winget search vim で検索を行う。
PS C:\Users\ryomatsu> winget search vim
名前 ID バージョン 一致 ソース
------------------------------------------------------------------------------
Vim Cheat Sheet 9WZDNCRDMCWR Unknown msstore
Vimar VIEW Pro 9NNG9QXL8W3Z Unknown msstore
Vim vim.vim.nightly 9.1.0011 winget
Vim vim.vim 9.1.0004 winget
qutebrowser qutebrowser.qutebrowser 3.1.0 Tag: vim winget
win-vind pit-ray.win-vind 5.9.0 Tag: vim winget
Neovim Nightly Neovim.Neovim.Nightly 0.10.0 Tag: vim winget
Neovim Neovim.Neovim 0.9.5 Tag: vim winget
Vieb Jelmerro.Vieb 11.0.0 Tag: vim winget
Helix Helix.Helix 23.10 Tag: vim winget
lf gokcehan.lf r31 Tag: vim winget
4K Video Downloader OpenMedia.4KVideoDownloader 4.28.0.5600 Tag: vimeo winget
そうするとこのように vim に関連する項目が返ってくる。名前、ID、バージョンがそれぞれ表示されている。問題なければインストールしたいソフトウェアの ID を winget install コマンドと組み合わせて実行しよう。
PS C:\Users\ryomatsu> winget install Neovim.Neovim
見つかりました Neovim [Neovim.Neovim] バージョン 0.9.5
このアプリケーションは所有者からライセンス供与されます。
Microsoft はサードパーティのパッケージに対して責任を負わず、ライセンスも付与しません。
このパッケージには次の依存関係が必要です:
- パッケージ
Microsoft.VCRedist.2015+.x64
ダウンロード中 https://github.com/neovim/neovim/releases/download/v0.9.5/nvim-win64.msi
██████████████████████████████ 40.4 MB / 40.4 MB
インストーラーハッシュが正常に検証されました
パッケージのインストールを開始しています...
インストールが完了しました
これでインストールできた。
winget でインストール済みのソフトウェアの一覧を表示する方法
winget list コマンドを実行すると、現在コンピューターにインストールされているソフトウェアの一覧を表示できる。
PS C:\Users\ryomatsu> winget list
名前 ID バージョン 利用可能 ソース
-----------------------------------------------------------------------------------------------
7-Zip 23.01 (x64) 7zip.7zip 23.01 winget
HP Smart AD2F1837.HPPrinterControl_v10z8vjag6ke6 150.1.1140.0
ここで表示されるものは winget でインストールしたかどうかは関係なく、全てのソフトウェアが表示される。
winget でソフトウェアのアップデートを行う方法
winget ではインストールしたソフトウェアのアップデートも行うことができる。
winget upgrade コマンドでアップデートが利用可能なパッケージの一覧を表示できる。
PS C:\Users\ryomatsu> winget upgrade
名前 ID バージョン 利用可能 ソース
-------------------------------------------------------------------------------
7-Zip 22.01 (x64) 7zip.7zip 22.01 23.01 winget
Git Git.Git 2.40.0 2.43.0 winget
OBS Studio OBSProject.OBSStudio 30.0.0 30.0.2 winget
VLC media player VideoLAN.VLC 3.0.19 3.0.20 winget
(省略)
17 アップグレードを利用できます。
このリストにあるものの中からソフトウェアを指定してアップデートを行うには、winget upgrade ID コマンドを実行する
PS C:\Users\ryomatsu> winget upgrade 7zip.7zip
見つかりました 7-Zip [7zip.7zip] バージョン 23.01
このアプリケーションは所有者からライセンス供与されます。
Microsoft はサードパーティのパッケージに対して責任を負わず、ライセンスも付与しません。
ダウンロード中 https://www.7-zip.org/a/7z2301-x64.exe
██████████████████████████████ 1.51 MB / 1.51 MB
インストーラーハッシュが正常に検証されました
パッケージのインストールを開始しています...
インストーラーは管理者として実行するように要求するため、プロンプトが表示されます。
インストールが完了しました
winget で一括でアップデートを行う方法
アップデートが複数あって一々コマンドを実行するのが面倒な場合は winget upgrade --all コマンドを利用しよう。
PS C:\Users\ryomatsu> winget upgrade --all
名前 ID バージョン 利用可能 ソース
----------------------------------------------------------------------------------
Git Git.Git 2.40.0 2.43.0 winget
OBS Studio OBSProject.OBSStudio 30.0.0 30.0.2 winget
(省略)
17 アップグレードを利用できます。
2 個のパッケージのバージョン番号を判別できません。すべての結果を表示するには、--include-unknown を使用してください。
(1/17) 見つかりました Git [Git.Git] バージョン 2.43.0
このアプリケーションは所有者からライセンス供与されます。
Microsoft はサードパーティのパッケージに対して責任を負わず、ライセンスも付与しません。
ダウンロード中 https://github.com/git-for-windows/git/releases/download/v2.43.0.windows.1/Git-2.43.0-64-bit.exe
██████████████████████████████ 58.0 MB / 58.0 MB
インストーラーハッシュが正常に検証されました
パッケージのインストールを開始しています...
インストーラーは管理者として実行するように要求するため、プロンプトが表示されます。
インストールが完了しました
(以下省略)
[/sourcecode]
winget まとめ
winget の基本的な使い方を紹介した。Windows でソフトウェアの管理を行う際に便利なので是非活用しよう。