[Windows] 패키지 관리자 Winget




winget의 기본 개념부터 다양한 명령어와 옵션을 활용하는 방법까지 정리합니다.

winget은 Microsoft에서 제공하는 Windows Package Manager로, 명령줄을 통해 소프트웨어를 쉽게 검색, 설치, 업그레이드, 제거할 수 있는 강력한 도구입니다.


Winget이란?

winget은 Windows 10 및 Windows 11 환경에서 소프트웨어를 관리할 수 있는 명령줄 도구입니다. Linux의 apt-get이나 yum과 비슷한 역할을 하며, 사용자가 애플리케이션을 설치하고 업데이트하며 제거하는 과정을 간편하게 만들어줍니다.


Winget 설치

Windows 10 및 Windows 11의 최신 버전에는 winget이 기본적으로 포함되어 있습니다. 만약 포함되어 있지 않다면 Microsoft Store를 통해 App Installer를 설치하여 사용할 수 있습니다.


기본 명령어와 옵션

패키지 검색 (search)

특정 소프트웨어를 검색할 때 사용합니다. 예를 들어, Google Chrome을 검색하려면 다음과 같이 입력합니다.

winget search Google.Chrome

옵션:

  • --source <source>: 특정 소스에서 패키지를 검색합니다.
  • --id <id>: 패키지 ID를 사용하여 검색합니다.
  • --name <name>: 패키지 이름을 사용하여 검색합니다.
  • --tag <tag>: 태그를 사용하여 검색합니다.
  • --command <command>: 명령어를 사용하여 검색합니다.
  • --exact 또는 -e: 정확히 일치하는 패키지를 검색합니다.

패키지 설치 (install)

소프트웨어를 설치하려면 install 명령어를 사용합니다. 예를 들어, Visual Studio Code를 설치하려면 다음과 같이 입력합니다.

winget install Microsoft.VisualStudioCode

옵션:

  • --id <id>: 패키지 ID를 사용하여 설치합니다.
  • --name <name>: 패키지 이름을 사용하여 설치합니다.
  • --source <source>: 특정 소스에서 패키지를 설치합니다.
  • --version <version>: 특정 버전의 패키지를 설치합니다.
  • --scope <scope>: 사용자 또는 시스템 범위에서 설치합니다 (user/system).
  • --silent 또는 -h: 설치 과정에서 사용자에게 질문하지 않고 조용히 설치합니다.
  • --accept-source-agreements: 소스 이용 약관을 자동으로 수락합니다.
  • --accept-package-agreements: 패키지 이용 약관을 자동으로 수락합니다.
  • --exact 또는 -e: 정확히 일치하는 패키지를 설치합니다.

패키지 업그레이드 (upgrade)

설치된 소프트웨어를 최신 버전으로 업그레이드합니다. 예를 들어, 모든 소프트웨어를 업그레이드하려면 다음과 같이 입력합니다.

winget upgrade --all

옵션:

  • --all: 모든 업그레이드 가능한 패키지를 업그레이드합니다.
  • --include-unknown: 버전 정보가 알 수 없는 패키지도 업그레이드 목록에 포함합니다.
  • --id <id>: 특정 패키지 ID를 사용하여 업그레이드합니다.
  • --name <name>: 특정 패키지 이름을 사용하여 업그레이드합니다.
  • --exact 또는 -e: 정확히 일치하는 패키지를 업그레이드합니다.

패키지 제거 (uninstall)

설치된 소프트웨어를 제거하려면 uninstall 명령어를 사용합니다. 예를 들어, Notepad++을 제거하려면 다음과 같이 입력합니다.

winget uninstall Notepad++.Notepad++

옵션:

  • --id <id>: 패키지 ID를 사용하여 제거합니다.
  • --name <name>: 패키지 이름을 사용하여 제거합니다.
  • --exact 또는 -e: 정확히 일치하는 패키지를 제거합니다.

패키지 목록 확인 (list)

설치된 소프트웨어 목록을 확인할 수 있습니다. 예를 들어, 설치된 모든 소프트웨어를 나열하려면 다음과 같이 입력합니다.

winget list

옵션:

  • --source <source>: 특정 소스에서 설치된 패키지를 나열합니다.
  • --id <id>: 특정 패키지 ID를 사용하여 목록을 확인합니다.
  • --name <name>: 특정 패키지 이름을 사용하여 목록을 확인합니다.
  • --exact 또는 -e: 정확히 일치하는 패키지를 나열합니다.

패키지 정보 보기 (show)

특정 소프트웨어의 상세 정보를 볼 수 있습니다. 예를 들어, Google Chrome의 정보를 보려면 다음과 같이 입력합니다.

winget show Google.Chrome

옵션:

  • --id <id>: 패키지 ID를 사용하여 정보를 봅니다.
  • --name <name>: 패키지 이름을 사용하여 정보를 봅니다.
  • --exact 또는 -e: 정확히 일치하는 패키지를 확인합니다.

패키지 목록 내보내기 (export)

설치된 모든 소프트웨어 목록을 파일로 내보낼 수 있습니다. 예를 들어, 현재 설치된 패키지 목록을 내보내려면 다음과 같이 입력합니다.

winget export -o packages.json

옵션:

  • --include-versions: 패키지의 버전 정보를 포함합니다.

패키지 목록 가져오기 (import)

파일을 통해 소프트웨어를 일괄 설치할 수 있습니다. 예를 들어, 내보낸 파일을 사용하여 패키지를 다시 설치하려면 다음과 같이 입력합니다.

winget import -i packages.json

옵션:

  • --ignore-missing: 목록에 없는 패키지를 무시합니다.
  • --ignore-versions: 특정 버전 없이 최신 버전을 설치합니다.

패키지 소스 관리 (source)

여러 소프트웨어 저장소를 추가하고 관리할 수 있습니다.

winget source [옵션] <add|remove|update|list>

옵션:

  • add --name <소스_이름> --arg <소스_주소>: 새로운 소스를 추가합니다.
  • remove --name <소스_이름>: 기존 소스를 제거합니다.
  • update: 소스를 업데이트합니다.
  • list: 소스 목록을 나열합니다.

매니페스트 검사 (validate)

매니페스트 파일의 유효성을 검사할 수 있습니다.

winget validate <매니페스트_파일>

마무리

winget은 Windows 환경에서 소프트웨어 관리를 쉽고 효율적으로 할 수 있는 강력한 도구입니다.

기본 명령어와 옵션들을 활용하면 소프트웨어 설치 및 관리를 훨씬 간편하게 할 수 있습니다.




Leave a Comment