wget으로 웹 사이트 백업하기

wget은 주로 웹에서 파일을 다운로드 받을 때 사용하는 명령 줄(Shell) 프로그램이다. 그 뿐 아니라 특정 도메인에 속한 웹 사이트를 모두 내려받는데 사용하기도 한다. 오프라인에서 특정 웹 사이트의 자료가 필요하거나 자신이 운영 중인 웹 사이트를 백업할 때 좋다. 이번에는 위키를 제거하기 전에 백업하기 위해 이 프로그램을 사용했다.

이번에 사용한 명령은 다음과 같다.

wget 
—recursive --html-extension --convert-links —page-requisites 
--remote-encoding=utf-8 --local-encoding=utf8 —restrict-file-name=nocontrol 
%MINIFYHTML8a0d5b8be15f0f7b7a9e64effc8f09be4%

옵션이 각기 의미하는 바는 다음과 같다.

  • recursive
    지정한 주소(https://andromedarabbit.net)와 그 주소에 속한 모든 웹 페이지를 가져온다.
  • convert-links
    모든 웹 링크를 로컬에 내려 받은 파일의 주소로 대체한다.
  • html-extension
    원래 웹 페이지가 https://andromedarabbit.net/index.php였다면 로컬 저장소에 저장할 때는 index.html로 파일 확장자를 바꾼다.
  • page-requisites
    웹 사이트에 포함된 이미지, CSS 등도 모두 내려 받는다.
  • remote-encoding
    원래 웹 사이트의 인코딩을 지정한다.
  • local-encoding
    로컬에 저장할 파일에 쓸 인코딩을 지정한다.
  • restrict-file-name
    가장 중요한 옵션이다. 이 옵션의 값을 nocontrol로 지정하지 않으면 한글이 포함된 URI는 아래와 같이 파일 이름이 정해진다.
    한글이
    하지만 nocontrol을 지정하면 정상적인 한글 파일 이름을 가진다.
    한글이

이 외에도 wget은 옵션이 다양하니 공식 문서를 참고하자!

Buy me a coffeeBuy me a coffee

최 재훈

블로그, 페이스북, 트위터 고성능 서버 엔진, 데이터베이스, 지속적인 통합 등 다양한 주제에 관심이 많다.
Close Menu