pin コマンド (winget)

wingetpin コマンドを使用すると、パッケージを特定のバージョン範囲にアップグレードする Windows パッケージ マネージャーを制限したり、パッケージをまったくアップグレードできないようにしたりすることができます。 ピン留めされたパッケージは引き続き単独でアップグレードしたり、Windows パッケージ マネージャーの外部からアップグレードしたりすることができます。

ピンの種類

WinGet では、次の 3 種類のパッケージ ピンがサポートされています。

  • ピン留め: パッケージは winget upgrade --all から除外されますが、winget upgrade <package> は許可されます。 --include-pinned 引数を使用して、ピン留めされたパッケージを winget upgrade --all に含めることができます。

  • ブロック: パッケージは winget upgrade --all または winget upgrade <package> からブロックされます。WinGet がアップグレードを実行できるようにするには、パッケージのピン留めを解除する必要があります。 --force オプションを使用して、ピンの動作をオーバーライドできます。

  • ゲーティング: パッケージは、特定のバージョンまたはバージョン範囲にピン留めされています。 パッケージをピン留めする正確なバージョンを指定することも、最後のバージョン部分としてワイルドカード文字 * を使用してバージョン範囲を指定することもできます。 たとえば、パッケージがバージョン 1.2.* にピン留めされている場合、1.2.0 から 1.2.x の間のすべてのバージョンは有効と見なされます。 --force オプションを使用して、ピンの動作をオーバーライドできます。

使用

winget pin <subcommand> <options>

Options

次のオプションを使用できます。

オプション 説明
-?、--help このコマンドに関する追加のヘルプを取得します。
--wait 終了する前に任意のキーを押すようユーザーに求めます。
--logs,--open-logs 既定のログの場所を開きます。
--verbose, --verbose-logs ログ記録設定をオーバーライドし、詳細ログを作成します。
--disable-interactivity 対話型プロンプトを無効にします。

サブコマンド

pin コマンドは、次のサブコマンドをサポートしています。

サブコマンド 説明
add 新しいピンを追加します。
remove パッケージ ピンを削除します。
list 現在のピンを一覧表示します。
reset ピンをリセットします

add

add サブコマンドは、新しいピンを追加します。 このサブコマンドでは、ピン留めする正確なパッケージを指定する必要があります。 あいまいさがある場合は、add サブコマンドを正確なアプリケーションに絞り込むように求めるプロンプトが表示されます。

使用法:

winget pin add [[-q] <query>] [<options>]

引数

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

Options

このオプションを使用すると、ピンの追加をニーズに合わせてカスタマイズできます。

オプション 説明
--id 検索をアプリケーションの ID に限定します。
--name 検索をアプリケーションの名前に限定します。
--moniker 検索をアプリケーション用に一覧表示されているモニカーに限定します。
--tag 検索を、アプリケーション用に一覧表示されているタグに限定します。
--cmd、--command 検索をアプリケーションのコマンドに限定します。
-v、--version ピン留めする正確なバージョンを指定できます。 バージョンの最後の部分としてワイルドカード * を使用できます。 ピンの動作を gating に変更します。
-s、--source 検索を、指定されたソース名に制限します。 この後にソース名を指定する必要があります。
-e、--exact 大文字小文字の区別の検査を含め、クエリで正確な文字列を使用します。 部分文字列の既定の動作は使用されません。
--force コマンドを直接実行し、セキュリティ関連以外の問題を続行します。
--blocking pin が削除されるまでアップグレードをブロックし、オーバーライド引数を回避します。 ピンの動作を blocking に変更します。
--installed インストールされている特定のバージョンをピン留めします
--accept-source-agreements ソースの使用許諾契約に同意し、プロンプトを回避するために使用されます。
--header 省略可能な Windows-Package-Manager REST ソースの HTTP ヘッダー。
-?、--help このコマンドに関する追加のヘルプを取得します。
--wait 終了する前に任意のキーを押すようユーザーに求めます
--logs, --open-logs 既定のログの場所を開きます。
--verbose, --verbose-logs ログ記録設定をオーバーライドし、詳細ログを作成します。
--disable-interactivity 対話型プロンプトを無効にします。

次の例では、アプリケーションのピンを追加します。 このピンを追加すると、winget upgrade --all を呼び出すときにこのパッケージがアップグレードされなくなります。 ピン留めされたパッケージを含めるには、winget upgrade --all--include-pinned 引数を使用します。

winget pin add powertoys

次の例では、ID を使用してアプリケーションのブロック ピンを追加します。 ブロック ピンを追加すると、winget upgrade --all または winget upgrade <package> を呼び出すときにこのパッケージがアップグレードされなくなります。 WinGet でアップグレードを実行するには、パッケージのブロックを解除する必要があります。

winget pin add --id Microsoft.PowerToys --blocking

次の例では、ID を使用してアプリケーションのゲーティング ピンを追加します。 ゲーティング ピンを追加すると、特定のバージョンまたはゲーティングされたワイルドカード範囲外のパッケージ バージョンをアップグレードするアップグレードを防ぐことができます。

winget pin add --id Microsoft.PowerToys --version 0.70.*

remove

remove サブコマンドは、ピンを削除します。 このサブコマンドでは、削除する正確なパッケージ ピンを指定する必要があります。 あいまいさがある場合は、remove サブコマンドを正確なアプリケーションに絞り込むように求めるプロンプトが表示されます。

使用法:

winget pin remove [[-q] <query>] [<options>]

引数

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

Options

このオプションを使用すると、ピンの削除をニーズに合わせてカスタマイズできます。

オプション 説明
--id 検索をアプリケーションの ID に限定します。
--name 検索をアプリケーションの名前に限定します。
--moniker 検索をアプリケーション用に一覧表示されているモニカーに限定します。
--tag 検索を、アプリケーション用に一覧表示されているタグに限定します。
--cmd、--command 検索をアプリケーションのコマンドに限定します。
-s、--source 検索を、指定されたソース名に制限します。 この後にソース名を指定する必要があります。
-e、--exact 大文字小文字の区別の検査を含め、クエリで正確な文字列を使用します。 部分文字列の既定の動作は使用されません。
--installed インストールされている特定のバージョンをピン留めします
--accept-source-agreements ソースの使用許諾契約に同意し、プロンプトを回避するために使用されます。
--header 省略可能な Windows-Package-Manager REST ソースの HTTP ヘッダー。
-?、--help このコマンドに関する追加のヘルプを取得します。
--wait 終了する前に任意のキーを押すようユーザーに求めます
--logs, --open-logs 既定のログの場所を開きます。
--verbose, --verbose-logs ログ記録設定をオーバーライドし、詳細ログを作成します。
--disable-interactivity 対話型プロンプトを無効にします。

次の例では、アプリケーションのピンを削除します。

winget pin remove powertoys

次の例では、ID を使用してアプリケーションのピンを削除します。

winget pin remove --id Microsoft.PowerToys

list

list サブコマンドは、現在のすべてのピンを一覧表示します。

使用法:

winget pin list [[-q] <query>] [<options>]

引数

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

Options

このオプションを使用すると、ピンの一覧表示をニーズに合わせてカスタマイズできます。

オプション 説明
--id 検索をアプリケーションの ID に限定します。
--name 検索をアプリケーションの名前に限定します。
--moniker 検索をアプリケーション用に一覧表示されているモニカーに限定します。
--tag 検索を、アプリケーション用に一覧表示されているタグに限定します。
--cmd、--command 検索をアプリケーションのコマンドに限定します。
-s、--source 検索を、指定されたソース名に制限します。 この後にソース名を指定する必要があります。
-e、--exact 大文字小文字の区別の検査を含め、クエリで正確な文字列を使用します。 部分文字列の既定の動作は使用されません。
--accept-source-agreements ソースの使用許諾契約に同意し、プロンプトを回避するために使用されます。
--header 省略可能な Windows-Package-Manager REST ソースの HTTP ヘッダー。
-?、--help このコマンドに関する追加のヘルプを取得します。
--wait 終了する前に任意のキーを押すようユーザーに求めます
--logs, --open-logs 既定のログの場所を開きます。
--verbose, --verbose-logs ログ記録設定をオーバーライドし、詳細ログを作成します。
--disable-interactivity 対話型プロンプトを無効にします。

次の例では、現在のすべてのピンが一覧表示されます。

winget pin list

次の例では、特定のパッケージ ピンがリストされます。

winget pin list --id Microsoft.PowerToys

reset

reset サブコマンドは、すべてのピンをリセットします。

--force 引数を指定せずにこのサブコマンドを使用すると、削除されるピンが表示されます。

すべてのピンをリセットするには、--force 引数を含めます。

使用法:

次の例では、リセットされるすべてのピンが表示されます。

winget pin reset

次の例では、既存のすべてのピンをリセットします。

winget pin reset --force