upgrade コマンド (winget)

winget ツールの upgrade コマンドを使用すると、指定したアプリケーションがアップグレードされます。 必要に応じて、list コマンドを使用して、アップグレードする必要のあるアプリケーションを特定することもできます。

upgrade コマンドでアップグレードするには、正確な文字列を指定する必要があります。 あいまいさがある場合は、upgrade コマンドを正確なアプリケーションに絞り込むように求めるプロンプトが表示されます。

Aliases

このコマンドでは、次のエイリアスを使用できます。

  • update

使用

winget upgrade [[-q] \<query> ...] [\<options>]

Image of upgrade command arguments

引数

次の引数を使用できます。

引数 説明
-q、--query アプリを検索するために使用するクエリ。

注意

query 引数は位置指定です。 ワイルドカード スタイルの構文はサポートされていません。 多くの場合、これはアップグレードするパッケージを見つけるために使う文字列です。

Options

オプションを使用すると、upgrade のエクスペリエンスをニーズに合わせてカスタマイズできます。

オプション 説明
-m、--manifest この後にマニフェスト (YAML) ファイルのパスを指定する必要があります。 マニフェストを使用して、ローカル YAML ファイルから upgrade のエクスペリエンスを実行できます。
--id アップグレードをアプリケーションの ID に限定します。
--name 検索をアプリケーションの名前に限定します。
--moniker 検索をアプリケーション用に一覧表示されているモニカーに限定します。
-v、--version アップグレードする正確なバージョンを指定できます。 指定しない場合、最新のバージョンによって最も高いバージョンのアプリケーションにアップグレードされます。
-s、--source 検索を、指定されたソース名に制限します。 この後にソース名を指定する必要があります。
-e、--exact 大文字小文字の区別の検査を含め、クエリで正確な文字列を使用します。 部分文字列の既定の動作は使用されません。
-i、--interactive 対話型モードでインストーラーを実行します。 既定のエクスペリエンスでは、インストーラーの進行状況が表示されます。
-h、--silent サイレント モードでインストーラーを実行します。 これにより、すべての UI が抑制されます。 既定のエクスペリエンスでは、インストーラーの進行状況が表示されます。
--purge パッケージ ディレクトリ内のすべてのファイルとディレクトリを削除します (移植可能)
-o、--log ログ記録をログ ファイルに送信します。 書き込み権限を持っているファイルへのパスを指定する必要があります。
--custom 既定値に加えてインストーラーに渡される引数。
--override インストーラーに直接渡される文字列。
-l、--location アップグレードする場所 (サポートされている場合)。
--scope インストールされているパッケージ スコープ フィルター (ユーザーまたはマシン) を選択します。
a, --architecture インストールするアーキテクチャを選択します。
--installer-type アップグレードするインストーラーの種類を選択します。 WinGet クライアントでサポートされているインストーラーの種類に関する記述を参照してください。
--locale 使用するロケール (BCP47 形式) を指定します。
--ignore-security-hash インストーラーのハッシュ チェック エラーを無視します。 非推奨。
--ignore-local-archive-malware-scan ローカル マニフェストからアーカイブの種類のパッケージをインストールする際に実行されるマルウェア スキャンは無視します。
--accept-package-agreements 使用許諾契約に同意し、プロンプトを回避するために使用されます。
--accept-source-agreements ソースの使用許諾契約に同意し、プロンプトを回避するために使用されます。
--header 省略可能な Windows-Package-Manager REST ソースの HTTP ヘッダー。
-r, --recurse, --all 利用可能なすべてのパッケージを最新のアプリケーションに更新します。
-u, --unknown, --include-unknown 現在のバージョンを特定できない場合でも、パッケージをアップグレードします。
--pinned,--include-pinned ブロックされていないピンがある場合でも、パッケージをアップグレードします。
--uninstall-previous アップグレード中に以前のバージョンのパッケージをアンインストールします。 動作は、個々のパッケージによって異なります。 一部のインストーラーは、新しいバージョンを並列でインストールするように設計されています。 一部のインストーラーには "uninstallPrevious" を指定するマニフェストが含まれているため、このコマンド フラグを使用しなくても古いバージョンがアンインストールされます。 この場合、winget upgrade --uninstall-previous コマンドを使用すると、パッケージ マニフェストの内容に関係なく、古いバージョンをアンインストールするように WinGet に指示されます。 パッケージ マニフェストに "uninstallPrevious" が含まれていなくて、--uninstall-previous フラグが使用されていない場合は、インストーラーの既定の動作が適用されます。
--force コマンドを直接実行し、セキュリティ関連以外の問題を続行します。
-?,--help 選択したコマンドに関するヘルプを表示します。
--wait 終了する前に任意のキーを押すようユーザーに求めます。
--logs,--open-logs 既定のログの場所を開きます。
--verbose, --verbose-logs ログ記録設定をオーバーライドし、詳細ログを作成します。
--disable-interactivity 対話型プロンプトを無効にします。

クエリの例

次の例では、アプリケーションの特定のバージョンにアップグレードします。

winget upgrade powertoys --version 0.15.2

次の例では、アプリケーションをその ID からアップグレードします。

winget upgrade --id Microsoft.PowerToys

すべてのアプリをアップグレードする例を次に示します。

winget upgrade --all

upgrade の使用

更新が必要なアプリを特定するには、引数なしで upgrade を使用するだけで、使用可能なすべてのアップグレードが表示されます。

下の例では、winget upgrade により、利用可能な更新プログラムがあるアプリがユーザーに表示されます。 利用可能な更新プログラムから、ユーザーは JanDeDobbeleer.OhMyPosh で更新プログラムが利用可能であることを識別し、upgrade を使用してアプリケーションを更新します。

Animation demonstrating upgrade command

listupgrade の使用

特定のアプリで使用可能な更新プログラムを検索するには、list コマンドを使用します。 特定のアプリで更新プログラムが利用可能であることを確認したら、upgrade を使用して最新のものをインストールします。

下の例では、list コマンドを使用して、Microsoft.WindowsTerminalPreview の更新プログラムが利用可能であることを確認しています。 その後、ユーザーは upgrade を使用してアプリケーションを更新します。 Animation demonstrating list command used in conjunction with upgrade command

upgrade --all

upgrade --all は、アップグレードが利用可能なすべてのアプリケーションを示します。 winget upgrade --all を実行すると、Windows パッケージ マネージャーによって更新プログラムが利用可能なすべてのアプリケーションが検索されて、更新プログラムのインストールが試みられます。

注意

一部のアプリケーションでは、バージョンが提供されません。 常に最新のものです。 Windows パッケージ マネージャーでアプリの新しいバージョンがあるかどうかを識別できないため、アップグレードすることはできません。

upgrade --uninstall-previous

upgrade --uninstall-previous は、パッケージの新しいバージョンをインストールする前に、以前のバージョンをアンインストールします。 --uninstall-previous 使用時、動作は個々のパッケージによって異なります。 一部のインストーラーは、新しいバージョンをサイド バイ サイドでインストールするように設計されていますが、他のインストーラーには既定のアップグレード動作として uninstallPrevious を指定するマニフェストが含まれています (そのため、コマンド フラグを使用しなくても以前のバージョンがアンインストールされます)。

パッケージ マニフェストにアップグレード動作として uninstallPrevious が含まれておらず、--uninstall-previous フラグが upgrade コマンドで使用されていない場合、インストーラーの既定の動作が適用されます。