(2025-07-09 初稿)
普段は、Linuxを使っており、aptを使って便利にソフトウェアのインストール、アップグレード、アンインストールを行っている。
ずっと知らなかったのだが、WindowsでもWingetという便利なソフトウェアがあることを知った。
ここでは、自分のメモ用にWIngetの簡単な使い方を紹介する。
冒頭で述べたように普段はDebianを使っている筆者なので、細かい点は大目に見てやってください。
以下では、例としてPDFをテキストに変換するpdftotext.exeというコマンドをインストールする手順を示す。
> winget search pdftotext
入力条件に一致するパッケージが見つかりませんでした。
あれ?、いきなり見つからない…(^^;
でネットを検索すると、pdftotext.exeはpopplerというパッケージに入っているらしい。
> winget search poppler
名前 ID バージョン 一致 ソース
--------------------------------------------------------------
Poppler oschwartz10612.Poppler 24.08.0-0 winget
pympress Cimbali.pympress 1.8.6 Tag: poppler winget
今度は、2つほどヒットしたが、上のPopplerのソフトウェアをインスト―ルすることにする。
> winget install -e oschwartz10612.Poppler
-e オプションは、大文字、小文字を区別してIDを指定する。間違いなく、パッケージをインストールすることができる。
これまでに、インストールしたパッケージのリストは、以下のようにして得る。
> winget list
名前 ID バージョン 利用可能 ソース
-------------------------------------------------------------------------------------
Mozilla Thunderbird (… Mozilla.Thunderbird.ja 140.0 winget
(以下、省略)
で、便利なのは、upgradeが必要なリストの一覧。
> winget upgrade
名前 ID バージョン 利用可能 ソース
-------------------------------------------------------------------------------------
Microsoft Visual C… Microsoft.VCRedist… 10.0.30319 10.0.40219 winget
Microsoft Visual C… Microsoft.VCRedist… 12.0.30501.0 12.0.40664.0 winget
(以下、省略)
全てのパッケージを一括でupgradeするには、以下のとおり。
> winget upgrade --all
これまで、いろいろなところに新しいパッケージをダウンロードしに行っていたのが、バカらしくなるくらい便利だ。
個別にアップグレードしたいときには、IDを指定してアップグレードする。
> winget upgrade --id oschwartz10612.Poppler
wingetの詳細は、--helpオプションで確認できる。
> winget --help
v1.11.400 の Windows パッケージ マネージャー
Copyright (c) Microsoft Corporation. All rights reserved.
WinGet コマンド ライン ユーティリティを使用すると、コマンド ラインからアプリケーションやその他のパッケージをインストールできます。
使用法: winget [<コマンド>] [<オプション>]
使用できるコマンドは次のとおりです:
install 指定されたパッケージをインストール
show パッケージに関する情報を表示します
source パッケージのソースの管理
search アプリの基本情報を見つけて表示
list インストール済みパッケージを表示する
upgrade 利用可能なアップグレードの表示と実行
uninstall 指定されたパッケージをアンインストール
hash インストーラー ファイルをハッシュするヘルパー
validate マニフェスト ファイルを検証
settings 設定を開くか、管理者設定を設定する
features 試験的な機能の状態を表示
export インストールされているパッケージのリストをエクスポート
import ファイル中のすべてのパッケージをインストール
pin パッケージ ピンの管理
configure システムを適切な状態に構成します
download 指定されたパッケージからインストーラをダウンロードする
repair 選択したパッケージを修復します
dscv3 DSC v3 リソース コマンド
特定のコマンドの詳細については、そのコマンドにヘルプ引数を渡します。 [-?]
次のオプションを使用できます。
-v,--version ツールのバージョンを表示
--info ツールの一般情報を表示
-?,--help 選択したコマンドに関するヘルプを表示
--wait 終了する前に任意のキーを押すプロンプトをユーザーに表示します
--logs,--open-logs 既定のログの場所を開く
--verbose,--verbose-logs WinGet の詳細ログを有効にする
--nowarn,--ignore-warnings 警告出力を非表示にする
--disable-interactivity 対話型プロンプトを無効にします
--proxy この実行に使用するプロキシを設定します
--no-proxy この実行に対するプロキシの使用を無効にする
その他のヘルプについては、次を参照してください: https://aka.ms/winget-command-help
便利なwingetコマンドだが、gemini-cliによると以下のメリット、デメリットがあるよう。
wingetのメリット(利点)
1. 自動化と効率化:
* 複数のアプリケーションを一つのコマンドで一度にインストールできる。新しいPCのセットアップが非常に早くなる。
* winget upgrade --all のようなコマンドで、インストール済みの対応アプリケーションを一度にすべて更新でき、非常に効率的。
2. コマンドラインでの一元管理:
* LinuxのaptやmacOSのHomebrewのように、ソフトウェア管理をコマンドラインで完結できる。
* 手動でWebサイトを探し、インストーラーをダウンロードしてクリックしていく手間が省ける。
3. 信頼性と安全性:
* Microsoftが公式に提供しているツールであり、リポジトリ(ソフトウェアの提供元)も審査されているため、怪しいサイトからマルウェアをダウンロードしてしまうリスクを低減できる。
4. スクリプト化が容易:
* インストールしたいソフトの一覧をスクリプトファイルに書いておけば、そのスクリプトを実行するだけで環境構築が完了できる。
5. Windowsへの統合:
* 最新のWindows 10およびWindows 11には標準で搭載されているため、すぐに利用を開始できる。
wingetのデメリット(欠点)
1. パッケージの網羅性:
* リポジトリは拡大しているが、まだすべてのソフトウェアが登録されているわけではない。特に、古かったりニッチだったりするソフトウェアは見つからないことがある。
2. CUI(コマンドライン)操作が必須:
* グラフィカルな画面(GUI)はなく、操作はすべてコマンドで行う必要がある。コマンドラインに慣れていないユーザーには少し敷居が高い。
3. 細かいインストールオプションの指定が煩雑:
* GUIのインストーラーでは簡単に選べるような「カスタムインストール」や特定のオプション指定が、winget経由だと複雑になったり、対応していなかったりする場合がある。
4. アンインストールの不完全さ:
* wingetによるアンインストールは、基本的には各ソフトウェアが持つアンインストーラーを呼び出すだけ。そのため、アンインストーラー自体の出来が悪いと、設定ファイルやレジストリが残ってしまうことがある。
とのこと。筆者はデメリットを考慮しても、メリットが上回るような気がするので、今後も使って行くことにする。
関連ページ