Computer >> 컴퓨터 >  >> 시스템 >> Mac

Mac에서 wget 설치하고 활용하는 방법 완벽 가이드

Mac에서 wget 설치하고 활용하는 방법 완벽 가이드

웹에서 리소스를 다운로드하는 방법은 다양합니다. 브라우저 외에도 wget 같은 도구를 활용하면 다른 작업을 하면서 동시에 웹 리소스를 다운로드할 수 있습니다. 이 글에서는 Mac에서 wget을 설치하고 사용하는 방법을 자세히 소개합니다.

wget이란 무엇이고, 어떤 용도로 사용될까?

wget은 지정된 URL에서 리소스를 다운로드할 수 있게 해주는 오픈소스 비대화형(non-interactive) 명령줄 유틸리티입니다. 비대화형 방식으로 작동하기 때문에 백그라운드에서 실행하거나 로그인하기 전에도 동작할 수 있다는 점이 큰 장점입니다.

wget은 GNU 팀이 진행하는 프로젝트로, 인터넷 연결 상태가 좋지 않은 환경에서도 안정적으로 작동하도록 설계되어 있습니다. 즉, 네트워크 조건이 최적이 아니더라도 견고하게 다운로드를 수행할 수 있습니다.

wget을 설치한 후에는 명령어를 실행하고 파일이 저장될 경로를 지정하면 됩니다. 이제 구체적인 방법을 알아보겠습니다.

Mac에 wget 설치하는 방법

wget을 설치하기 전에 먼저 패키지 관리자가 필요합니다. macOS에는 wget이 기본 포함되어 있지 않지만, 최고의 Mac 패키지 관리자인 Homebrew를 이용해 손쉽게 다운로드하고 설치할 수 있습니다.

1단계: Homebrew 다운로드 및 설치

Homebrew를 설치하려면 먼저 터미널 창을 열고 아래 명령어를 실행합니다:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

이 명령은 curl을 사용해 macOS에 사전 설치된 Ruby 환경에서 실행되는 설치 스크립트 파일들을 내려받습니다.

Enter 키를 눌러 명령을 실행하면, 설치 프로그램이 진행될 과정에 대해 상세히 안내해 줍니다.

Mac에서 wget 설치하고 활용하는 방법 완벽 가이드

내용을 확인한 후 진행하면 설치가 시작됩니다.

2단계: 명령줄에서 wget 설치

다음으로 Homebrew를 이용해 wget을 설치합니다. 터미널에서 아래 명령어를 실행하세요:

brew install wget
Mac에서 wget 설치하고 활용하는 방법 완벽 가이드

설치 프로그램이 실시간으로 진행 상황을 표시해 주며, 별도의 조작 없이 자동으로 진행됩니다. 참고로 이미 Homebrew가 설치되어 있다면 brew update 명령을 먼저 실행해 모든 패키지 목록(formulae)을 최신 상태로 유지하는 것이 좋습니다.

터미널에 새로운 프롬프트가 나타나면 Mac에서 wget을 사용해 리소스를 다운로드할 준비가 완료된 것입니다.

wget으로 웹 리소스 다운로드하기

wget으로 URL에서 원격 리소스를 다운로드하려면 다음과 같은 형식의 명령어를 사용합니다:

wget -O path/to/local.copy https://example.com/url/to/download.html

이렇게 하면 URL에 지정된 파일이 내 컴퓨터의 지정된 위치에 저장됩니다.

Mac에서 wget 설치하고 활용하는 방법 완벽 가이드

-O 옵션(플래그)을 생략하면 파일은 현재 작업 디렉토리에 저장됩니다.

Mac에서 wget 설치하고 활용하는 방법 완벽 가이드

예를 들어, 웹페이지 하나를 다운로드 폴더에 저장하고 싶다면 다음과 같이 입력합니다:

wget -O /Users/[your-username]/Downloads/status.html https://www.w3.org/Status.html

반면 -O 옵션 없이 동일한 작업을 하려면 wget을 실행하기 전에 먼저 해당 디렉토리로 이동(cd downloads)해야 합니다:

wget /Users/[your-username]/Downloads/status.html https://www.w3.org/Status.html

다운로드 진행 상황에 대한 전체 정보가 출력되는데, wget이 워낙 빠르다 보니 실시간 업데이트라기보다는 다운로드 결과 요약에 가깝게 표시됩니다.

디렉토리 전체 재귀적으로 다운로드하기

wget으로 디렉토리 트리 전체를 다운로드하려면 -r/--recursive 옵션과 -np/--no-parent 옵션을 함께 사용해야 합니다:

wget -e robots=off -r -np https://www.w3.org/History/19921103-hypertext/hypertext/

이렇게 하면 wget이 지정된 디렉토리 내 문서에서 발견된 모든 링크를 따라가며, 해당 URL 경로 전체를 재귀적으로 다운로드합니다.

여기서 -e robots=off 명령에 주목하세요. 이 옵션은 robots.txt 파일의 제한 규칙을 무시합니다. 일반적으로 다운로드가 중간에 잘리는 것을 방지하려면 robots.txt를 비활성화하는 것이 좋습니다.

wget의 추가 옵션 활용하기

wget은 다양한 추가 옵션을 지원하는 유연한 도구입니다. 다운로드에 대한 특별한 요구사항이 있을 때 특히 유용합니다.

여기서는 다운로드 프로세스 제어와 로그 생성이라는 두 가지 핵심 영역을 살펴보겠습니다.

다운로드 방식 제어하기

다운로드 프로세스를 세부적으로 설정할 수 있는 옵션이 많습니다. 그중 가장 유용한 몇 가지를 소개합니다:

  • wget -X /absolute/path/to/directory: 원격 서버의 특정 디렉토리를 다운로드 대상에서 제외합니다.
  • wget -nH: "호스트명" 디렉토리를 제거합니다. 즉, 기본 도메인 이름을 건너뜁니다. 예를 들어 앞선 예제에서 wget은 www.w3.org 폴더를 건너뛰고 History 디렉토리부터 시작합니다.
  • wget --cut-dirs=#: 다운로드 시작 전에 URL에서 지정한 개수만큼의 디렉토리를 건너뜁니다. 예를 들어 -nH --cut-dirs=1을 사용하면 "ftp.xemacs.org/pub/xemacs/" 경로가 단순히 "/xemacs/"로 변경되어 로컬 다운로드 시 불필요한 빈 상위 디렉토리 수가 줄어듭니다.
  • wget -R index.html/wget --reject index.html: 지정된 파일명과 일치하는 파일을 건너뜁니다. 이 경우 모든 index 파일이 제외됩니다. 별표(*)는 와일드카드로, "*.png"처럼 사용하면 PNG 확장자를 가진 모든 파일을 건너뜁니다.
  • wget -i file: 입력 파일에서 대상 URL을 가져옵니다. 이 입력 파일은 HTML 형식이어야 하며, 그렇지 않다면 --force-html 옵션을 사용해 HTML을 파싱해야 합니다.
  • wget -nc/wget --no-clobber: 대상 위치에 이미 존재하는 파일을 덮어쓰지 않습니다.
  • wget -c/wget --continue: 부분적으로 다운로드된 파일의 다운로드를 이어서 계속합니다.
  • wget -t 10: 실패하기 전까지 리소스 다운로드를 최대 10회까지 재시도합니다.

wget은 다운로드 프로세스 제어 외에도 나중에 참조할 수 있는 로그를 생성할 수 있습니다.

로그 출력 수준 조절하기

wget 사용 시 받는 출력 결과를 조절하는 옵션들도 있습니다.

  • wget -d: 디버깅 출력을 활성화합니다.
  • wget -o path/to/log.txt: 표준 출력 대신 지정된 경로의 파일에 로그를 기록합니다.
  • wget -q: 오류 메시지를 포함한 wget의 모든 출력을 끕니다.
  • wget -v: wget의 기본값인 상세(verbose) 출력을 명시적으로 활성화합니다.
  • wget --no-verbose: 로그 메시지는 끄되 오류 메시지만 표시합니다.

다운로드 중 어떤 일이 일어나는지 확인하고 싶은 경우가 많기 때문에 이러한 옵션은 다른 옵션만큼 자주 사용하지 않을 수 있습니다. 그래도 대량의 파일을 한꺼번에 다운로드하면서 문제 발생 시 원인을 파악하고 싶다면, 로그를 남기거나 출력을 끄는 방법이 유용하게 쓰일 수 있습니다.

마무리

브라우저나 다른 GUI 도구로도 웹페이지와 리소스를 다운로드할 수 있지만, 명령줄을 활용하면 시간을 크게 절약할 수 있습니다. wget 같은 도구는 브라우저보다 강력할 뿐만 아니라 반응 속도도 빠릅니다. wget의 전체 기능이 궁금하다면 GNU man 페이지를 참고해 보세요.

만약 wget이 정상적으로 작동하지 않는다면 Wi-Fi 연결 문제를 진단해 볼 필요가 있습니다. 여러분은 Mac에서 wget을 활용해 웹 리소스를 다운로드할 계획인가요? 아래 댓글로 의견을 공유해 주세요!