winget
pin コマンドを使用すると、Windows パッケージ マネージャーがパッケージを特定のバージョンの範囲にアップグレードできないようにしたり、パッケージを完全にアップグレードできないようにしたりできます。 ピン留めされたパッケージは引き続き単独でupgradeされ、Windows パッケージ マネージャーの外部からアップグレードされる場合があります。
ピンの種類
WinGet では、次の 3 種類のパッケージ ピンがサポートされています。
ピン留め: パッケージは
winget upgrade --allから除外されますが、winget upgrade <package>は許可されます。--include-pinned引数を使用して、ピン留めされたパッケージをwinget upgrade --allに含めることができます。ブロック: パッケージは
winget upgrade --allまたはwinget upgrade <package>からブロックされます。WinGet が upgradeを実行できるようにするには、パッケージのピン留めを外す必要があります。--forceオプションを使用して、pinの動作をオーバーライドできます。ゲーティング: パッケージは、特定のバージョンまたはバージョン範囲にピン留めされています。 パッケージをピン留めする正確なバージョンを指定することも、最後のバージョン部分としてワイルドカード文字
*を使用してバージョン範囲を指定することもできます。 たとえば、パッケージがバージョン1.2.*にピン留めされている場合、1.2.0から1.2.xの間のすべてのバージョンは有効と見なされます。--forceオプションを使用して、pinの動作をオーバーライドできます。
使用
winget pin <subcommand> <options>
オプション
次のオプションを使用できます。
| オプション | 説明 |
|---|---|
-?, --help |
このコマンドに関する追加のヘルプを取得します。 |
--wait |
終了する前に任意のキーを押すようユーザーに求めます。 |
--logs, --open-logs |
既定のログの場所を開きます。 |
--verbose, --verbose-logs |
ログ記録設定をオーバーライドし、詳細ログを作成します。 |
--nowarn, --ignore-warnings |
警告の出力を抑制します。 |
--disable-interactivity |
対話型プロンプトを無効にします。 |
--proxy |
この実行に使用するプロキシを設定します。 |
--no-proxy |
この実行に対してプロキシの使用を無効にします。 |
サブコマンド
pin コマンドは、次のサブコマンドをサポートします。
| サブコマンド | 説明 |
|---|---|
add |
新しい pinを追加します。 |
remove |
パッケージ pinを削除します。 |
list |
現在のピンを一覧表示します。 |
reset |
ピンをリセットします |
追加する
add サブコマンドは、新しいpinを追加します。 このサブコマンドでは、 pinする正確なパッケージを指定する必要があります。 あいまいさがある場合は、 add サブコマンドをさらにフィルター処理して、正確なアプリケーションにするように求められます。
使用法:
winget pin add [[-q] <query>] [<options>]
引数
| 引数 | 説明 |
|---|---|
-q, --query |
アプリを検索するために使用するクエリ。 |
オプション
このオプションを使用すると、ピンの追加をニーズに合わせてカスタマイズできます。
| オプション | 説明 |
|---|---|
--id |
検索をアプリケーションの ID に限定します。 |
--name |
検索をアプリケーションの名前に限定します。 |
--moniker |
検索をアプリケーション用に一覧表示されているモニカーに限定します。 |
--tag |
検索を、アプリケーション用に一覧表示されているタグに限定します。 |
--cmd, --command |
検索をアプリケーションのコマンドに限定します。 |
-e, --exact |
大文字小文字の区別の検査を含め、クエリで正確な文字列を使用します。 部分文字列の既定の動作は使用されません。 |
-v, --version |
pin の特定のバージョンを指定できます。 バージョンの最後の部分としてワイルドカード * を使用できます。
pin
gating動作を変更します。 |
-s, --source |
検索を、指定されたソース名に制限します。 この後にソース名を指定する必要があります。 |
--header |
省略可能な Windows-Package-Manager REST ソースの HTTP ヘッダー。 |
--authentication-mode |
認証ウィンドウの基本設定 (silent、silentPreferred、interactive のいずれか) を指定します。 |
--authentication-account |
認証に使用するアカウントを指定します。 |
--accept-source-agreements |
ソースの使用許諾契約に同意し、プロンプトを回避するために使用されます。 |
--force |
コマンドを直接実行し、セキュリティ関連以外の問題を続行します。 |
--blocking |
pinが削除されるまでアップグレードをブロックし、オーバーライド引数を回避します。
pin
blocking動作を変更します。 |
--installed |
インストールされている特定のバージョンをピン留めします |
-?, --help |
このコマンドに関する追加のヘルプを取得します。 |
--wait |
終了する前に任意のキーを押すようユーザーに求めます。 |
--logs, --open-logs |
既定のログの場所を開きます。 |
--verbose, --verbose-logs |
ログ記録設定をオーバーライドし、詳細ログを作成します。 |
--nowarn, --ignore-warnings |
警告の出力を抑制します。 |
--disable-interactivity |
対話型プロンプトを無効にします。 |
--proxy |
この実行に使用するプロキシを設定します。 |
--no-proxy |
この実行に対してプロキシの使用を無効にします。 |
例
次の例では、アプリケーションの pin を追加します。 この pin を追加すると、 winget upgrade --allを呼び出すときにこのパッケージがアップグレードされなくなります。 ピン留めされたパッケージを含めるには、--include-pinned で winget upgrade --all 引数を使用します。
winget pin add powertoys
次の例では、その ID を使用して、アプリケーションのブロック pin を追加します。 ブロック pin を追加すると、 winget upgrade --all または winget upgrade <package>を呼び出すときに、このパッケージがアップグレードされなくなります。 WinGet が upgradeを実行できるようにするには、パッケージのブロックを解除する必要があります。
winget pin add --id Microsoft.PowerToys --blocking
次の例では、その ID を使用してアプリケーションのゲーティング pin を追加します。 ゲーティング pin を追加すると、特定のバージョンまたはゲートされたワイルドカードの範囲外のパッケージ バージョンを upgrade アップグレードできなくなります。
winget pin add --id Microsoft.PowerToys --version 0.70.*
削除
remove サブコマンドは、pinを削除します。 このサブコマンドでは、削除する正確なパッケージ pin を指定する必要があります。 あいまいさがある場合は、 remove サブコマンドをさらにフィルター処理して、正確なアプリケーションにするように求められます。
使用法:
winget pin remove [[-q] <query>] [<options>]
引数
| 引数 | 説明 |
|---|---|
-q, --query |
アプリを検索するために使用するクエリ。 |
オプション
このオプションを使用すると、ピンの削除をニーズに合わせてカスタマイズできます。
| オプション | 説明 |
|---|---|
--id |
検索をアプリケーションの ID に限定します。 |
--name |
検索をアプリケーションの名前に限定します。 |
--moniker |
検索をアプリケーション用に一覧表示されているモニカーに限定します。 |
-s, --source |
検索を、指定されたソース名に制限します。 この後にソース名を指定する必要があります。 |
--tag |
検索を、アプリケーション用に一覧表示されているタグに限定します。 |
--cmd, --command |
検索をアプリケーションのコマンドに限定します。 |
-e, --exact |
大文字小文字の区別の検査を含め、クエリで正確な文字列を使用します。 部分文字列の既定の動作は使用されません。 |
--header |
省略可能な Windows-Package-Manager REST ソースの HTTP ヘッダー。 |
--authentication-mode |
認証ウィンドウの基本設定 (silent、silentPreferred、interactive のいずれか) を指定します。 |
--authentication-account |
認証に使用するアカウントを指定します。 |
--accept-source-agreements |
ソースの使用許諾契約に同意し、プロンプトを回避するために使用されます。 |
--installed |
インストールされている特定のバージョンをピン留めします。 |
-?, --help |
このコマンドに関する追加のヘルプを取得します。 |
--wait |
終了する前に任意のキーを押すようユーザーに求めます。 |
--logs, --open-logs |
既定のログの場所を開きます。 |
--verbose, --verbose-logs |
ログ記録設定をオーバーライドし、詳細ログを作成します。 |
--nowarn, --ignore-warnings |
警告の出力を抑制します。 |
--disable-interactivity |
対話型プロンプトを無効にします。 |
--proxy |
この実行に使用するプロキシを設定します。 |
--no-proxy |
この実行に対してプロキシの使用を無効にします。 |
例
次の例では、アプリケーションの pin を削除します。
winget pin remove powertoys
次の例では、その ID を使用してアプリケーションの pin を削除します。
winget pin remove --id Microsoft.PowerToys
リスト
list サブコマンドは、現在のすべてのピンをリストします。
使用法:
winget pin list [[-q] <query>] [<options>]
引数
| 引数 | 説明 |
|---|---|
-q, --query |
アプリを検索するために使用するクエリ。 |
オプション
このオプションを使用すると、ピンの一覧表示をニーズに合わせてカスタマイズできます。
| オプション | 説明 |
|---|---|
--id |
検索をアプリケーションの ID に限定します。 |
--name |
検索をアプリケーションの名前に限定します。 |
--moniker |
検索をアプリケーション用に一覧表示されているモニカーに限定します。 |
-s, --source |
検索を、指定されたソース名に制限します。 この後にソース名を指定する必要があります。 |
--tag |
検索を、アプリケーション用に一覧表示されているタグに限定します。 |
--cmd, --command |
検索をアプリケーションのコマンドに限定します。 |
-e, --exact |
大文字小文字の区別の検査を含め、クエリで正確な文字列を使用します。 部分文字列の既定の動作は使用されません。 |
--header |
省略可能な Windows-Package-Manager REST ソースの HTTP ヘッダー。 |
--authentication-mode |
認証ウィンドウの基本設定 (silent、silentPreferred、interactive のいずれか) を指定します。 |
--authentication-account |
認証に使用するアカウントを指定します。 |
--accept-source-agreements |
ソースの使用許諾契約に同意し、プロンプトを回避するために使用されます。 |
-?, --help |
このコマンドに関する追加のヘルプを取得します。 |
--wait |
終了する前に任意のキーを押すようユーザーに求めます。 |
--logs, --open-logs |
既定のログの場所を開きます。 |
--verbose, --verbose-logs |
ログ記録設定をオーバーライドし、詳細ログを作成します。 |
--nowarn, --ignore-warnings |
警告の出力を抑制します。 |
--disable-interactivity |
対話型プロンプトを無効にします。 |
--proxy |
この実行に使用するプロキシを設定します。 |
--no-proxy |
この実行に対してプロキシの使用を無効にします。 |
例
次の例では、現在のすべてのピンが一覧表示されます。
winget pin list
次の例では、特定のパッケージ pinを一覧表示します。
winget pin list --id Microsoft.PowerToys
リセット
reset サブコマンドは、すべてのピンをリセットします。
--force 引数を指定せずにこのサブコマンドを使用すると、削除されるピンが表示されます。
すべてのピンをリセットするには、--force 引数を含めます。
使用法:
winget pin reset [<options>]
オプション
オプションを使用すると、ニーズに合わせてピンのリセットをカスタマイズできます。
| オプション | 説明 |
|---|---|
--force |
コマンドを直接実行し、セキュリティ関連以外の問題を続行します。 |
-s, --source |
検索を、指定されたソース名に制限します。 この後にソース名を指定する必要があります。 |
-?, --help |
このコマンドに関する追加のヘルプを取得します。 |
--wait |
終了する前に任意のキーを押すようユーザーに求めます。 |
--logs, --open-logs |
既定のログの場所を開きます。 |
--verbose, --verbose-logs |
ログ記録設定をオーバーライドし、詳細ログを作成します。 |
--nowarn, --ignore-warnings |
警告の出力を抑制します。 |
--disable-interactivity |
対話型プロンプトを無効にします。 |
--proxy |
この実行に使用するプロキシを設定します。 |
--no-proxy |
この実行に対してプロキシの使用を無効にします。 |
例
次の例では、リセットされるすべてのピンが表示されます。
winget pin reset
次の例では、既存のすべてのピンをリセットします。
winget pin reset --force
Windows developer