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 개인 파일 유지하면서 초기화하는 방법

설치 상태 확인

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을 통해 스크립트를 한 줄로 다운로드하고 실행하여 간편하게 설치할 수 있습니다.

Windows 작업 스케줄러 실행하는 방법

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 netplwiz 사용자 계정 자동 로그인 체크 박스 복구

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에서 문자열로 된 스크립트를 실행할 수 있게 해주는 커맨드입니다. 이 과정을 통해 사용자는 별도의 파일 다운로드, 저장, 실행 과정 없이 스크립트를 바로 실행할 수 있습니다.
윈도우 10 netplwiz 사용자 계정 자동 로그인 체크 박스 복구

설치 완료

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

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

관련 글

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

Leave a Comment