PowerShell은 마이크로소프트(Microsoft)가 무료로 제공하는 편리한 작업 자동화 도구입니다. 이름에서 알 수 있듯이 Windows 환경에서 다양한 작업을 손쉽게 관리하고 자동화할 수 있는데요. 하지만 PowerShell의 활용 범위는 여기서 끝나지 않습니다.
예를 들어 PowerShell만으로도 인터넷에 있는 파일을 간편하게 내려받을 수 있습니다. 이번 글에서는 PowerShell을 사용해 파일을 다운로드하는 가장 쉬운 방법을 단계별로 자세히 알아보겠습니다.
PowerShell로 파일 다운로드하는 방법
PowerShell로 파일을 다운로드하는 가장 널리 쓰이는 방법은 다운로드하려는 파일의 URL을 지정하는 것입니다. 이 가이드에서는 바로 그 방법을 다룹니다. 다운로드에는 Invoke-WebRequest cmdlet을 사용합니다.
본격적인 다운로드에 앞서 한 가지 짚고 넘어갈 부분이 있습니다. 내려받은 파일을 저장할 목적 경로가 반드시 필요하다는 점입니다. 이를 위해 cmdlet 명령에 특정 매개변수를 추가해야 합니다.
완성된 기본 구문은 다음과 같습니다:
Invoke-WebRequest -Uri <source> -OutFile <destination>
source와 destination 변수를 각각 다운로드하려는 파일의 URL과 저장할 폴더 경로로 바꿔 입력하면 됩니다.
PowerShell을 실행한 뒤 아래 예시 명령을 입력해 보세요. 실제 명령의 형태는 다음과 같습니다:
# 원본 파일 위치 $source = 'https://www.majorgeeks.com/files/details/4diskclean_free.html/4dskcln.exe' # 파일을 저장할 위치 $destination = 'C:\programfiles\newfolder' # 파일 다운로드 Invoke-WebRequest -Uri $source -OutFile $destination
이 명령은 'https://www.majorgeeks.com/files/details/4diskclean_free.html/4dskcln.exe'에서 파일을 내려받아 'c:\programfiles\newfolder' 폴더에 저장합니다. 이렇게 하면 필요한 파일이 비교적 간단하게 다운로드됩니다.
다만 일부 사이트는 다운로드 전에 로그인 인증을 요구하기도 합니다. 이런 경우에는 -Credential 매개변수를 추가하면 해결됩니다. 코드에 다음 명령을 추가하세요:
$credential = Get-Credential
명령을 실행하면 로그인 정보를 입력하는 창이 나타나고, 인증이 완료된 후 다운로드가 진행됩니다. 인증 절차가 포함된 전체 명령은 다음과 같습니다:
$credential = Get-Credential $source = 'https://www.majorgeeks.com/files/details/4diskclean_free.html/4dskcln.exe' $destination = 'C:\programfiles\newfolder' Invoke-WebRequest -Uri $source -OutFile $destination -Credential $credential
이것으로 끝입니다. 이제 다운로드가 시작됩니다.
알아두면 좋은 팁: 다운로드 속도 높이기
Invoke-WebRequest는 진행률 표시줄을 그리는 과정에서 대용량 파일 다운로드 속도가 느려질 수 있습니다. 다운로드 전에 다음 명령을 먼저 실행하면 진행률 표시가 비활성화되어 속도가 크게 개선됩니다:
$ProgressPreference = 'SilentlyContinue'
번거로움 없이 PowerShell로 파일 다운로드하기
PowerShell로 파일을 다운로드하는 일이 꼭 복잡할 필요는 없습니다. 위에서 소개한 방법만 익히면 누구나 몇 줄의 명령으로 원하는 파일을 손쉽게 내려받을 수 있습니다. 하지만 여기서 멈출 필요는 없습니다. PowerShell에는 PC에서 거의 모든 작업을 처리할 수 있게 도와주는 수많은 명령이 내장되어 있으니, 계속 탐색하며 그 가능성을 넓혀 보세요.