Windows에서 Winget 설치하는 방법

컴퓨터를 사용하면 다양한 소프트웨어는 필수 불가결한 요소가 되었습니다. 개인 사용자부터 큰 기업에 이르기까지, 사람들은 업무 효율을 높이고 일상을 간편하게 만들어주는 여러 프로그램들에 의존하고 있습니다. 대부분의 사용자는 필요한 애플리케이션을 그들의 공식 웹사이트나 Microsoft Store와 같은 앱 스토어를 통해 다운로드 및 설치하는 방법을 선호합니다.

하지만, 이러한 전통적인 방법은 각 애플리케이션마다 별도의 설치 과정을 수행해야 하므로, 몇 개의 앱을 설치할 때는 문제가 되지 않을 수 있으나, 다수의 프로그램을 설치하거나 설치 과정을 자동화하고자 하는 사용자에게는 시간이 많이 소요되고 복잡할 수 있습니다.

이러한 필요성을 충족시키기 위해, Microsoft에서는 Windows 사용자를 위한 새로운 해결책으로 Winget이라는 패키지 관리자를 제공합니다. Winget은 명령줄 인터페이스를 통해 다양한 소프트웨어 패키지의 설치, 업데이트, 제거 등을 간편하게 할 수 있게 해주는 도구입니다. Winget 더 알아보기

Winget은 기본적으로 Windows 10 버전 1809 이상에서 사용 가능한 도구로, 현재는 시스템에 기본적으로 설치되어 있어 바로 사용할 수 있습니다. 그러나, 어떤 이유로 Winget을 시스템에서 찾을 수 없거나 이전에 제거했다면, Microsoft Store 등 다음 과정을 통해 간단히 다시 설치할 수 있습니다.

본문은 아래 튜토리얼 환경에서 ezis.org가 직접 검증 된 내용으로 작성 한 것 이지만, 각자 사용 환경이 다르기에 일부 사용자는 내용과 다른 결과가 나타날 수도 있습니다. 단순 하게 참고용으로 활용바랍니다.

튜토리얼 환경: 윈도우 11 Pro (빌드: 22631.3155), Windows PowerShell

요구사항

Windows 10, Windows 11, Windows Server 2022, Windows Sandbox에서는 Winget을 사용할 수 있습니다. 다만, Windows Server 2019에서는 Winget을 사용할 수 없습니다.

  • 호환 가능한 운영 체제:
    • Windows 10: 버전 1809 이상의 모든 버전이 호환됩니다. 즉, 1809, 1903, 1909, 2004, 20H2, 21H1, 등의 모든 버전이 포함됩니다.
    • Windows 11: Windows 11 운영 체제에서 완벽하게 호환됩니다.
    • Server 2022: Windows Server 2022에서도 완벽하게 호환됩니다.
    • Windows Sandbox: Windows Sandbox 환경에서도 Winget을 사용할 수 있습니다.
  • 호환되지 않는 운영 체제:
    • Server 2019: Windows Server 2019에서는 Winget이 지원되지 않습니다. 따라서 이 운영 체제에서는 Winget을 사용할 수 없습니다.
윈도우 11 이 windowsdefender 링크를 열려면 새 앱이 필요합니다 해결 방법

설치 상태 확인

Windows 10 22H2 또는 Windows 11 22H2 버전을 사용하는 경우 별도 추가 과정없이 Winger을 사용할 수 있습니다. 설치 여부를 확인할 수 없는 경우 명령 프롬프트 또는 PowerShell을 통해 다음 명령으로 현재 설치가 되어 있는지 확인합니다. 본문에서는 PowerShell을 기준으로 안내합니다.

Winget-미설치-상태
Winget 미설치 상태

Windows PowerShell을 열고 다음 명령을 작성하거나 붙여넣기( Ctrl + V )한 뒤 Enter키로 실행 합니다. 이후 위와 같은 오류가 발생하면 설치되지 않은 상태이며, 버전 등 관련 정보가 표시되면 설치가 완료된 것입니다.

winget

설치 방법

Winget은 PowerShell 갤러리, 웹 설치 프로그램, Microsoft Store, 또는 직접 다운로드 및 실행을 통해 설치할 수 있습니다. PowerShell 갤러리에서는 NuGet 패키지 공급자를 설치한 후 명령 실행이 필요하며, 직접 다운로드 및 실행할 때는 단축 URL이나 GitHub 릴리스 URL을 사용할 수 있습니다. 또는 PowerShell을 통해 스크립트를 한 줄로 다운로드하고 실행하여 간편하게 설치할 수 있습니다.

윈도우 10 로컬 계정 사용자 생성 및 관리자 계정 전환하기

PowerShell 갤러리를 통한 설치(권장)

PowerShell 갤러리에서 Winget을 설치할 수 있습니다. 테스트를 거친 공개 릴리스 버전을 받을 수 있고, 명령어가 간단하며, 모든 매개변수를 지원하기 때문에 권장되는 방식으로 공식 안내하고 있습니다.

Nuget-패키지-설치
Nuget 패키지 설치

관리자 권한으로 PowerShell을 열고 다음 명령으로 먼저 NuGet 패키지 공급자를 설치합니다. -Force 옵션은 스크립트가 오래된 경우 강제로 업데이트합니다.

Install-PackageProvider -Name "NuGet" -Force
PSGallery-신뢰-설정-팁-제공
PSGallery 신뢰 설정 팁 제공

이어서 PSGallery 리포지토리를 신뢰할 수 있도록 설정하라는 팁을 제공합니다. 이렇게 하면 매번 실행할 때마다 확인 프롬프트가 표시되지 않습니다.

Set-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
winget-install-진행
winget install 진행

이제 다음 명령을 실행하면 PowerShell 갤러리에서 winget-install 스크립트를 다운로드해서 스크립트를 실행해 WinGet 설치를 시작합니다. 설치 중에는 진행상황 프롬프트가 표시되고 상단에 진행 바가 잠시 보여지게 됩니다.

Install-Script winget-install -Force

웹 설치 프로그램 사용

Winget 공식 저장소에서 최신 버전의 웹 설치 프로그램을 다운로드하여 실행하면 Winget이 설치됩니다.

Winget-저장소-검색-후-접속
Winget 저장소 검색 후 접속

자주 사용하는 검색 엔진을 통해 Winget 등의 키워드로 검색 후 결과에서 microsoft/winget-cli를 찾아 클릭합니다. 또는 아래 바로가기 링크를 통해 빠르게 이동할 수 있습니다.

바로가기: winget-cli
최신릴리즈-정보-클릭
최신릴리즈 정보 클릭

GitHub 페이지로 이동 후 우측 Releases 섹션을 보면 Windows Package Manager 1.7.10와 같은 형태의 링크를 확인할 수 있는데 이 부분을 클릭합니다.

msixbundle-파일-다운로드링크-클릭
msixbundle 파일 다운로드링크 클릭

이어지는 페이지에서 가장 아래로 이동하면 Assets 영역이 보이게 됩니다. 여기서 Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle라는 이름의 파일을 클릭해 다운로드합니다.

파일-우클릭-후-연결-프로그램-메뉴-선택
파일 우클릭 후 연결 프로그램 메뉴 선택

다운로드 경로로 이동 하면 앞선 링크 형식의 파일을 찾을 수 있습니다. 이 파일을 마우스로 두 번 클릭하거나 컨텍스트 메뉴의 연결 프로그램(H)를 선택합니다.

이-파일을-열-때-사용할-앱을-선택하세요
이 파일을 열 때 사용할 앱을 선택하세요

이 파일을 열 때 사용할 앱을 선택하세요.라는 제목의 창이 팝업되는데 여기서 Microsoft Store에서 앱 찾기를 선택한 뒤 확인을 클릭합니다. 이후 Microsoft Store로 연결되고 설치가 완료됩니다.

윈도우10 자동 로그인하는 방법

Microsoft Store를 통한 설치

명령줄 사용에 어려움이 있다면 Microsoft Store 앱을 통해서 간단하게 설치하고 관리할 수 있습니다. 다만, 최신 버전을 빨리 설치하고 싶다면 PowerShell 갤러리나 GitHub 방식을 사용해야 합니다.

앱-설치-관리자-검색-안-되는-경우가-있음
앱 설치 관리자 검색 안 되는 경우가 있음

시작 메뉴 또는 검색으로 Microsoft StoreMicrosoft-Store를 찾아 실행한 뒤 앱 설치 관리자로 검색합니다. 위와 같이 검색이 되지 않는 경우가 있는데 이때 다음 바로가기 링크를 클릭하면 해당 페이지로 연결됩니다.

바로가기: https://www.microsoft.com/ko-kr/p/app-installer
Microsoft-Store를-여시겠습니까
Microsoft Store를 여시겠습니까

링크를 통해 실행하면 Microsoft Store을(를) 여시겠습니까? 라는 메시지가 팝업됩니다. 여기서 Microsoft Store 열기를 클릭합니다.

우측-상단-다운로드-버튼-클릭
우측 상단 다운로드 버튼 클릭

앱 설치 관리자 페이지로 이동이되고 우측 상단 다운로드를 클릭하면 설치가 진행됩니다.

WinGet 설치 스크립트를 직접 다운로드하여 즉시 실행(참고용)

이외에도 다음과 같은 방식으로 WinGet 설치 스크립트를 직접 다운로드하여 즉시 실행할 수 있습니다. 이 방식의 장점은 단순하고 빠르게 WinGet을 설치할 수 있다는 점입니다. 특히 스크립트 다운로드와 실행을 한 줄에 처리할 수 있습니다. 다만, 매개변수를 지정하려면 약간 복잡한 ScriptBlock 실행 방식을 사용해야 한다는 점입니다. 또한 인터넷에서 직접 스크립트를 실행하므로 위험할 수 있습니다.

asheroto.com/winget 단축 URL

asheroto.com/winget 단축 URL을 통해 Winget 설치 스크립트를 다운로드하고 실행하는 방법은 크게 두 가지입니다. 첫 번째 방법은 매개변수 없이 스크립트를 바로 실행하는 것이고, 두 번째 방법은 -Force 매개변수를 포함하여 보다 세밀한 제어가 가능한 실행 방식입니다. 이를 통해 사용자는 PowerShell을 활용하여 쉽고 빠르게 Winget을 설치할 수 있습니다.

  • 매개변수 없이 실행: irm asheroto.com/winget | iex
    • irm asheroto.com/winget: Invoke-WebRequest로 단축 URL에서 스크립트를 다운로드합니다. 이 커맨드는 PowerShell에서 웹 요청을 보내고, 웹 서버로부터 응답을 받는데 사용됩니다.
    • | iex: 파이프라인(|)을 사용하여 Invoke-WebRequest로부터 받은 스크립트 내용을 Invoke-Expression에 전달합니다. Invoke-Expression은 문자열로 된 코드를 실행할 수 있게 해주는 커맨드입니다. 이 과정을 통해 다운로드 받은 스크립트가 바로 실행됩니다.
  • 매개변수(-Force) 지정: &([ScriptBlock]::Create((irm asheroto.com/winget))) -Force
    • irm asheroto.com/winget: 이 부분은 위와 동일하게, 단축 URL을 통해 Winget 설치 스크립트를 다운로드합니다.
    • [ScriptBlock]::Create(...): 다운로드한 스크립트를 ScriptBlock 객체로 변환합니다.
    • &(...): 변환된 ScriptBlock을 실행합니다. 여기서 &은 PowerShell에서 ScriptBlock이나 커맨드를 실행하는데 사용되는 연산자입니다.
    • -Force: -Force 매개변수를 지정합니다. 이 매개변수는 스크립트 실행 시 특정 조건(예: 보호된 파일의 강제 변경)을 무시하고 강제로 진행하게 하는 옵션입니다. 스크립트에 따라 필요한 경우가 있을 수 있습니다.

winget.pro 단축 URL

winget.pro 단축 URL을 사용하는 방법도 역시 두 가지가 있으며, 이는 asheroto.com/winget 단축 URL을 사용하는 방법과 유사합니다. 이를 통해 사용자는 PowerShell을 이용하여 Winget 설치 스크립트를 실행할 수 있습니다. 각 방법에 대한 세부 내용은 아래와 같습니다.

  • 매개변수 없이 실행: irm winget.pro | iex
    • irm winget.pro: Invoke-WebRequest 커맨드를 활용해 winget.pro 단축 URL을 통해 스크립트를 다운로드합니다. 이 명령어는 웹 요청을 보내고 웹 서버로부터 응답을 받기 위해 사용되며, 이 경우에는 winget.pro로부터 직접 스크립트 내용을 받아옵니다.
    • | iex: 파이프라인(|)을 사용해 Invoke-WebRequest로부터 받은 스크립트 내용을 Invoke-Expression에 전달하고 실행합니다. 이 커맨드는 문자열 형태의 코드를 실행 가능하게 하는데, 이를 통해 다운로드 받은 스크립트가 즉시 실행됩니다.
  • 매개변수(-Force) 지정: &([ScriptBlock]::Create((irm winget.pro))) -Force
    • irm winget.pro: 위와 동일하게, winget.pro 단축 URL을 통해 Winget 설치 스크립트를 다운로드합니다.
    • [ScriptBlock]::Create(...): 다운로드한 스크립트를 ScriptBlock 객체로 변환하는 과정입니다. PowerShell에서 ScriptBlock은 실행 가능한 코드 블록을 의미하며, 이 변환을 통해 스크립트를 안전하게 실행할 수 있습니다.
    • &(...): 변환된 ScriptBlock을 실행합니다. & 연산자는 PowerShell에서 ScriptBlock이나 커맨드를 실행하는데 사용됩니다.
    • -Force: 이 옵션은 스크립트 실행 시 특정 조건을 무시하고 강제로 실행하도록 합니다. 이는 스크립트가 요구하는 특별한 조건이 있을 때 유용할 수 있습니다.

GitHub 직접 릴리스 URL

단축 링크가 아닌 실제 GitHub 저장소의 최신 릴리즈 버전 링크를 통해 바로 다운로드해서 설치할 수 있습니다. 이 방법은 GitHub에서 제공하는 최신 릴리스 기능을 활용하여, 사용자가 수동으로 버전을 확인하고 다운로드할 필요 없이 항상 최신 버전의 설치 스크립트를 실행할 수 있도록 합니다.

irm https://github.com/asheroto/winget-install/releases/latest/download/winget-install.ps1 | iex
  • irm https://github.com/asheroto/winget-install/releases/latest/download/winget-install.ps1:
    • Invoke-WebRequest의 단축 명령어인 irm을 사용하여 GitHub의 asheroto/winget-install 저장소에서 최신 릴리스의 winget-install.ps1 스크립트 파일을 다운로드합니다. 이 URL은 GitHub에서 제공하는, 특정 저장소의 최신 릴리스를 직접 가리키는 고유한 방식을 사용합니다. 이를 통해 사용자는 항상 최신 버전의 스크립트를 받아올 수 있습니다.
  • | iex:
    • 다운로드한 스크립트 내용을 파이프라인을 통해 Invoke-Expression 커맨드로 전달하고 실행합니다. iex는 PowerShell에서 문자열로 된 스크립트를 실행할 수 있게 해주는 커맨드입니다. 이 과정을 통해 사용자는 별도의 파일 다운로드, 저장, 실행 과정 없이 스크립트를 바로 실행할 수 있습니다.
윈도우 11 실행창 명령어 사용 기록이 남지 않도록 추적 기능 끄는 법

설치 완료

설치-완료-상태
설치 완료 상태

이제 명령 줄에 다음과 같이 입력 해 다시 설치가 완료되었는지 확인할 수 있습니다.

관련 글

댓글로 남기기 어려운 내용은 Contact Form 에서 개별적으로 문의 할 수 있습니다. 해당 글과 연관 된 내용은 Copy를 이용해 현재 페이지의 주소를 복사 후 문의 폼에 입력시 보다 정확한 답을 얻을 수 있습니다.

Leave a Comment