こんにちは、技術部システム開発課の蔵坪と申します。
「今更wingetの記事?」 きっと、そう思った方もいますよね。
白状します。私自身、wingetがこんなに便利になっているなんて、最近まで知らなかったんです…。 数年前に一度触ってみて「パッケージも少ないし、まだ早いかな?」と感じて以来、すっかりご無沙汰でした。
でも、それが大きな間違い!久しぶりに使ってみたら、あまりの進化に「もっと早く使っておけば…」と後悔したほどです。 今回は、そんな私の反省も踏まえつつ、同じようにwingetから少し距離を置いていた方や、まだその本当の便利さを知らない方へ向けて、「もう手放せない!」と感じたwingetの魅力をご紹介します。
エンジニアの「あるある」、wingetで解決しませんか?
- PCセットアップ地獄: 新しいPCが届いた!でも、開発ツールを一つひとつWebサイトから探して、ダウンロードして、インストールして…という作業に半日溶けてしまう…。
- 突然の脆弱性対応: 「〇〇に脆弱性発見!」という連絡がSlackで飛び交う。全メンバーが対応したか、確認するのも一苦労…。
- 便利なはずのフリーソフトが化石に: ちょっとした便利ツール、気づけば半年前にインストールしたきり、一度も更新していない…。
これらの「あるある」な悩み、wingetがスマートに解決してくれます。
wingetとは?
Microsoftが開発・提供する、公式のパッケージ管理ツールです。 コマンドプロンプトやPowerShellからコマンドを一つ実行するだけで、ソフトウェアの検索、インストール、アップデート、アンインストールができてしまいます。
Linuxのaptやyum、macOSのHomebrewを使ったことがある方なら、すぐにピンとくるはずです。
すぐに使える利用環境
- Windows 10(バージョン1809以降)やWindows 11には、標準で搭載されています。
- PowerShellやコマンドプロンプトで
wingetと入力し、バージョン情報が表示されれば準備OKです。
基本的な使い方
もう、ブラウザでインストーラーを探し回る必要はありません。以下のコマンドだけで、驚くほど簡単に操作できます。
探す (search): 例として「Visual Studio Code」を探してみます。
winget search vscodeインストール (install): 検索結果で表示されたIDを指定するのが確実です。
winget install Microsoft.VisualStudioCodeまとめて更新 (upgrade): これが超強力!更新可能なアプリを、すべて一括でアップデートします。
winget upgrade --allアンインストール (uninstall): アンインストールもコマンド一つです。
winget uninstall Microsoft.VisualStudioCode
私がwingetに感動した3つのポイント
- 手動で入れたアプリも、まとめてアップデートしてくれる!
- 「管理者として実行」を、ほとんど意識しなくていい!
- 対応アプリが膨大!しかも探し方が簡単!
Point 1: 手動インストールしたアプリもアップデート対象に
驚いたのが、これです。以前、公式サイトから手動でインストーラーを使って入れたGoogle Chromeや7-Zip。これらも winget upgrade --all を実行するだけで、ちゃんとアップデート対象としてリストアップされたんです。wingetでインストールしたものだけが対象だと思い込んでいたので、これは嬉しい誤算でした。
Point 2: 「管理者として実行」は、ほぼ不要
基本的に、wingetはユーザー権限で動作します。もし、インストールに管理者権限が必要なソフトウェアだった場合は、wingetが自動でUAC(ユーザーアカウント制御)のプロンプトを表示して、権限の昇格を促してくれます。いちいちPowerShellを管理者権限で開き直す、といった手間が必要ありません。
Point 3: 膨大なアプリと簡単な探し方
公式リポジトリには9,000以上のパッケージが登録済み(2025年7月時点)。開発ツール、ブラウザ、ユーティリティなど、日常的に使うアプリはほぼ網羅されています。
応用編:スクリプトで、さらに快適な環境構築
ゼロからの環境構築を、わずか数分で
新しいPCのセットアップは、あらかじめ用意しておいたPowerShellスクリプトを実行するだけで完了です。
setup.ps1
Write-Host "開発環境のセットアップを開始します…" # -e はIDとの完全一致、--accept-source-agreements はソースリポジトリの同意を自動化 winget install -e --id Git.Git --accept-source-agreements winget install -e --id Microsoft.VisualStudioCode --accept-source-agreements winget install -e --id Docker.DockerDesktop --accept-source-agreements winget install -e --id 7zip.7zip --accept-source-agreements winget install -e --id Google.Chrome --accept-source-agreements Write-Host "セットアップが完了しました。"
今の環境を「ほぼ完全コピー」
現在使っているPCにインストールされているアプリをリスト化し、それを元に別のPCで一括インストールすることも可能です。
今の環境をJSONファイルに出力 (export)
winget export -o my_apps.jsonJSONファイルから環境を復元 (import)
winget import -i my_apps.json
さいごに
wingetは、もはや単なるパッケージ管理ツールではありません。日々の業務の効率化、セキュリティの維持、そして開発環境の標準化を力強くサポートしてくれる、現代のWindows開発に必須のパートナーです。
- もう、アプリ探しの旅には出ない。 コマンド一つで、必要なツールがすぐに手に入ります。
- 「あのアプリ、更新したっけ?」は、もう忘れてOK。
winget upgrade --allが、あなたのPCを常に最新の状態に保ちます。 - 新しいPCのセットアップも、怖くない。 スクリプト一つで、いつもの環境が数分で再現できます。
「昔使ってみたけど、いまいちだったな…」と感じている方こそ、ぜひもう一度wingetを試してみてください。きっと、その進化に驚き、あなたの開発ライフに欠かせない存在になるはずです。