pin 명령(winget)

wingetpin 명령을 사용하면 Windows 패키지 관리자가 패키지를 특정 버전의 범위로 업그레이드하는 것을 제한하거나 패키지를 완전히 업그레이드하지 못하게 할 수 있습니다. 고정된 패키지는 자체적으로 업그레이드할 수 있으며 Windows 패키지 관리자 외부에서 업그레이드할 수 있습니다.

핀 유형

WinGet은 다음과 같은 세 가지 유형의 패키지 핀을 지원합니다.

  • 고정: 패키지는 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>

옵션

다음 옵션을 사용할 수 있습니다.

옵션 설명
-?, --help 이 명령에 대한 추가 도움말을 가져옵니다.
--wait 종료하기 전에 아무 키나 누르라는 메시지를 사용자에게 표시합니다.
--로그,--열기-로그 기본 로그 위치를 엽니다.
--자세한 정보, --자세한 정보-로그 로깅 설정을 재정의하고 자세한 정보 표시 로그를 만드는 데 사용됩니다.
--사용 하지 않도록 설정-상호 작용 대화형 프롬프트를 사용하지 않도록 설정합니다.

하위 명령

pin 명령은 다음 하위 명령을 지원합니다.

하위 명령 설명
add 새 핀을 추가합니다.
remove 패키지 핀을 제거합니다.
목록 현재 핀을 나열합니다.
reset 핀 다시 설정

add

add 하위 명령은 새 핀을 추가합니다. 이 하위 명령을 사용하려면 고정할 정확한 패키지를 지정해야 합니다. 문자열이 명확하지 않으면 add 하위 명령을 정확한 애플리케이션으로 추가 필터링하라는 메시지가 표시됩니다.

사용:

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

인수

Argument 설명
-q,--query 앱을 검색하는 데 사용되는 쿼리입니다.

옵션

옵션을 사용하면 요구 사항에 맞게 핀 추가를 사용자 지정할 수 있습니다.

옵션 설명
--id 검색을 애플리케이션 ID로 제한합니다.
--name 검색을 애플리케이션 이름으로 제한합니다.
--moniker 검색을 애플리케이션에 대해 나열된 모니커로 제한합니다.
--tag 검색을 애플리케이션에 대해 나열된 태그로 제한합니다.
--cmd, --command 검색을 애플리케이션의 명령으로 제한합니다.
-v, --version 고정할 정확한 버전을 지정할 수 있습니다. 와일드카드 *는 마지막 버전 부분으로 사용할 수 있습니다. 핀 동작을 gating로 변경합니다.
-s, --source 검색을 제공된 원본 이름으로 제한합니다. 원본 이름이 뒤에 나와야 합니다.
-e, --exact 대/소문자 구분 검사를 포함하여 쿼리에서 정확한 문자열을 사용합니다. 하위 문자열의 기본 동작을 사용하지 않습니다.
--force 명령을 직접 실행하고 비보안 관련 문제를 계속 진행합니다.
--blocking 핀이 제거될 때까지 업그레이드를 차단하여 인수 재정의를 방지합니다. 핀 동작을 blocking로 변경합니다.
--installed 설치된 특정 버전 고정
--accept-source-agreements 원본 사용권 계약에 동의하고 프롬프트를 방지하는 데 사용됩니다.
--header 선택적 Windows 패키지 관리자 REST 원본 HTTP 헤더입니다.
-?, --help 이 명령에 대한 추가 도움말을 가져옵니다.
--대기 종료하기 전에 아무 키나 누르라는 메시지를 사용자에게 표시합니다.
--logs, --open-logs 기본 로그 위치를 엽니다.
--자세한 정보, --자세한 정보-로그 로깅 설정을 재정의하고 자세한 정보 표시 로그를 만드는 데 사용됩니다.
--사용 하지 않도록 설정-상호 작용 대화형 프롬프트를 사용하지 않도록 설정합니다.

다음 예제에서는 애플리케이션에 대한 핀을 추가합니다. 이 핀을 추가하면 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 앱을 검색하는 데 사용되는 쿼리입니다.

옵션

옵션을 사용하면 요구 사항에 맞게 핀 제거를 사용자 지정할 수 있습니다.

옵션 설명
--id 검색을 애플리케이션 ID로 제한합니다.
--name 검색을 애플리케이션 이름으로 제한합니다.
--moniker 검색을 애플리케이션에 대해 나열된 모니커로 제한합니다.
--tag 검색을 애플리케이션에 대해 나열된 태그로 제한합니다.
--cmd, --command 검색을 애플리케이션의 명령으로 제한합니다.
-s, --source 검색을 제공된 원본 이름으로 제한합니다. 원본 이름이 뒤에 나와야 합니다.
-e, --exact 대/소문자 구분 검사를 포함하여 쿼리에서 정확한 문자열을 사용합니다. 하위 문자열의 기본 동작을 사용하지 않습니다.
--installed 설치된 특정 버전 고정
--accept-source-agreements 원본 사용권 계약에 동의하고 프롬프트를 방지하는 데 사용됩니다.
--header 선택적 Windows 패키지 관리자 REST 원본 HTTP 헤더입니다.
-?, --help 이 명령에 대한 추가 도움말을 가져옵니다.
--대기 종료하기 전에 아무 키나 누르라는 메시지를 사용자에게 표시합니다.
--logs, --open-logs 기본 로그 위치를 엽니다.
--자세한 정보, --자세한 정보-로그 로깅 설정을 재정의하고 자세한 정보 표시 로그를 만드는 데 사용됩니다.
--사용 하지 않도록 설정-상호 작용 대화형 프롬프트를 사용하지 않도록 설정합니다.

다음 예제에서는 애플리케이션에 대한 핀을 제거합니다.

winget pin remove powertoys

다음 예제에서는 해당 ID를 사용하여 애플리케이션에 대한 핀을 제거합니다.

winget pin remove --id Microsoft.PowerToys

list

list 하위 명령은 현재 핀을 모두 나열합니다.

사용:

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

인수

Argument 설명
-q,--query 앱을 검색하는 데 사용되는 쿼리입니다.

옵션

옵션을 사용하면 요구 사항에 맞게 목록 핀을 사용자 지정할 수 있습니다.

옵션 설명
--id 검색을 애플리케이션 ID로 제한합니다.
--name 검색을 애플리케이션 이름으로 제한합니다.
--moniker 검색을 애플리케이션에 대해 나열된 모니커로 제한합니다.
--tag 검색을 애플리케이션에 대해 나열된 태그로 제한합니다.
--cmd, --command 검색을 애플리케이션의 명령으로 제한합니다.
-s, --source 검색을 제공된 원본 이름으로 제한합니다. 원본 이름이 뒤에 나와야 합니다.
-e, --exact 대/소문자 구분 검사를 포함하여 쿼리에서 정확한 문자열을 사용합니다. 하위 문자열의 기본 동작을 사용하지 않습니다.
--accept-source-agreements 원본 사용권 계약에 동의하고 프롬프트를 방지하는 데 사용됩니다.
--header 선택적 Windows 패키지 관리자 REST 원본 HTTP 헤더입니다.
-?, --help 이 명령에 대한 추가 도움말을 가져옵니다.
--대기 종료하기 전에 아무 키나 누르라는 메시지를 사용자에게 표시합니다.
--logs, --open-logs 기본 로그 위치를 엽니다.
--자세한 정보, --자세한 정보-로그 로깅 설정을 재정의하고 자세한 정보 표시 로그를 만드는 데 사용됩니다.
--사용 하지 않도록 설정-상호 작용 대화형 프롬프트를 사용하지 않도록 설정합니다.

다음 예제에서는 현재 핀을 모두 나열합니다.

winget pin list

다음 예제에서는 특정 패키지 핀을 나열합니다.

winget pin list --id Microsoft.PowerToys

reset

reset 하위 명령은 모든 핀을 다시 설정합니다.

--force 인수 없이 이 하위 명령을 사용하면 제거될 핀이 표시됩니다.

모든 핀을 다시 설정하려면 --force 인수를 포함합니다.

사용:

다음 예제에서는 재설정할 모든 핀을 보여 줍니다.

winget pin reset

다음 예제에서는 기존 핀을 모두 다시 설정합니다.

winget pin reset --force