728x90
반응형

쉘/터미널 환경 파일 다운로드 프로그램

  • 쉘(Shell) 또는 터미널(Terminal)에서 파일(File)을 다운로드(Download)하는 프로그램들을 소개합니다.
  • 각 도구의 특징과 함께 다양한 다운로드 예제도 함께 소개합니다.


1. wget

  • HTTP, HTTPS, FTP 등의 프로토콜을 지원하는 파일 다운로드 도구.
  • 단일 파일 다운로드, 재시도, 배치 다운로드 및 웹사이트 미러링 가능.
  • 대부분의 리눅스 배포판에 기본 포함되어 있음.

사용 예제

  • 단일 파일 다운로드
  •  wget https://example.com/file.zip
    

  • 백그라운드에서 다운로드
  •  wget -b https://example.com/file.zip
    

  • 다운로드 중단 후 재개
  •  wget -c https://example.com/file.zip
    

  • 웹사이트 전체 다운로드
  • wget --mirror --convert-links --adjust-extension --page-requisites --no-parent https://example.com/
    


2. curl

  • URL에서 데이터를 다운로드하거나 업로드할 수 있는 강력한 도구.
  • 다양한 프로토콜 지원. (HTTP, HTTPS, FTP 등)
  • wget과 달리 기본적으로 데이터를 출력하지만, 파일 저장도 가능.

사용 예제

  • 단일 파일 다운로드
  •  curl -O https://example.com/file.zip
    

  • 출력 내용 없이 다운로드
  •  curl -s -O https://example.com/file.zip
    

  • 다중 파일 다운로드
  •  curl -O https://example.com/file1.zip -O https://example.com/file2.zip
    

  • FTP 서버에서 파일 다운로드
  •  curl -u username:password ftp://ftp.example.com/file.zip -O
    


3. aria2

  • 다중 연결을 활용한 빠른 다운로드 지원
  • 멀티 프로토콜 지원 (HTTP, HTTPS, FTP, SFTP, BitTorrent, Metalink)
  • 병렬 다운로드 가능

사용 예제

  • 단일 파일 다운로드
  •  aria2c https://example.com/file.zip
    

  • 다중 연결을 활용한 빠른 다운로드
  •  aria2c -x 16 https://example.com/file.zip
    

  • 다중 파일 다운로드
  •  aria2c -i urls.txt
    
    • urls.txt 파일에 여러 개의 URL을 입력하면 한 번에 다운로드함.

  • 토렌트 파일 다운로드
  •  aria2c file.torrent
    

  • 메탈링크(Metalink) 파일 다운로드
  •  aria2c file.metalink
    


4. axel

  • 다중 연결을 활용한 가벼운 다운로드 가속기
  • wget보다 가볍고 빠르게 다운로드 가능
  • 단순한 기능 제공

사용 예제

  • 기본 다운로드
  •  axel https://example.com/file.zip
    

  • 최대 10개의 연결로 빠른 다운로드
  •  axel -n 10 https://example.com/file.zip
    

  • 다운로드 속도 제한 (500KB/s)
  •  axel -s 500 https://example.com/file.zip
    


5. lftp

  • FTP, HTTP, HTTPS를 지원하는 파일 전송 프로그램
  • 자동 재시도 및 백그라운드 다운로드 지원
  • wget보다 강력한 FTP 관련 기능 제공

사용 예제

  • FTP 서버에 접속하여 다운로드
  • lftp -u username,password ftp://ftp.example.com
    
  • 이후 FTP 프롬프트에서 아래 명령어 입력
  • get file.zip
    

  • 한 줄로 FTP 파일 다운로드
  • lftp -c "open ftp://ftp.example.com; get file.zip"
    

  • 디렉터리 전체 다운로드
  • lftp -c "mirror ftp://ftp.example.com/directory/"
    


정리

  • 각 프로그램의 주요 특징을 비교하면 다음과 같습니다.
프로그램 특징 다중 연결 지원 FTP 지원 웹사이트 미러링
wget 기본적인 파일 다운로드, 웹사이트 미러링 가능
curl 데이터 전송 및 API 호출에 강함
aria2 다중 연결 다운로드, 토렌트 지원
axel 가벼운 다운로드 가속기
lftp 강력한 FTP 지원, 미러링 가능
  • 빠른 다운로드가 필요하면 → aria2, axel
  • FTP 다운로드가 필요하면 → lftp**
  • API 연동이나 간단한 다운로드가 필요하면 → curl
  • 웹사이트 전체 다운로드가 필요하면 → wget
728x90
반응형

+ Recent posts