리눅스 wget 웹 get post 요청 사용 방법

Wget은 웹 서버로부터 콘텐츠를 가져오는 컴퓨터 프로그램으로, GNU 프로젝트의 일부입니다.

이 프로그램의 이름은 월드 와이드 웹(www 또는 web)과 get에서 가져온 이름입니다.

HTTP, HTTPS, FTP 프로토콜을 통해 콘텐츠들내려받기를 지원합니다.

 

wget 패키지 설치 확인하기

wget 패키지 확인

wget : command not found

wget 명령어가 실행되지 않는다면 먼저 wget 패키지를 설치해 줘야 합니다.

# yum -y install wget

 

wget zip 파일 가져오기

리눅스의 패키지 파일을 wget을 통해 가져오는 것을 해보겠습니다.

wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.17.2.tar.xz

 

 

ftp 파일 가져오기

wget http://www.example.com/

wget ftp://ftp.gnu.org/pub/gnu/wget/wget-latest.tar.gz

 

wget 다른이름으로 저장하기

wget - O Change_name.tar.gz ftp://ftp.gnu.org/pub/gnu/wget/wget-latest.tar.gz // 다른 이름으로 저장할 수 있습니다.

 

wget ftp 아이디 패스워드 입력하여 가져오기

wget --ftp-user=guest --ftp-password=ftpuser ftp://ftp.site.net/sample.tar.gz

 

해외 사이트를 이용할 경우 인터넷, 네트워크가 불안정해서 중간에 끊길 수 있습니다. tries 옵션으로 응답이 없는 사이트에 재시도 하도록 옵션을 부여할 수 있습니다.

wget --tries=10

 

 

wget 사용 방법

사용법: wget [OPTION] [URL]

긴 옵션에 대한 필수 인수는 짧은 옵션에도 필수입니다.

 

startup:

-V, --version Wget의 버전을 표시하고 종료합니다.

-h, --help 이 도움말을 인쇄합니다.

-b, --background 시작 후 배경으로 이동합니다.

-e, --execute=COMMAND는 `.wgetrc' 스타일의 명령을 실행합니다.

 

로깅 및 입력 파일:

-o, --output-file=FILE 로그 메시지를 FILE에 기록합니다.

-a, --append-output=FILE FILE에 메시지를 추가합니다.

-d, --debug 많은 디버깅 정보를 인쇄합니다.

-q, --quiet 조용한(출력 없음).

-v, --verbose 자세한 정보 표시(기본값).

-nv, --no-verbose 조용하지 않고 장황함을 끕니다.

--report-speed=TYPE 출력 대역폭을 TYPE으로 표시합니다. TYPE은 비트일 수 있습니다.

-i, --input-file=FILE 로컬 또는 외부 FILE에서 찾은 다운로드 URL.

-F, --force-html은 입력 파일을 HTML로 취급합니다.

-B, --base=URL은 HTML 입력 파일 링크를 확인합니다(-i -F).

URL을 기준으로 합니다.

--config=FILE 사용할 구성 파일을 지정합니다.

 

다운로드:

-t, --tries=NUMBER 재시도 횟수를 NUMBER로 설정합니다(무제한 0).

--retry-connrefused 연결이 거부된 경우에도 재시도합니다.

-O, --output-document=FILE 문서를 FILE에 씁니다.

-nc, --no-clobber 다운로드할 다운로드 건너뛰기

기존 파일(덮어쓰기).

-c, --continue 부분적으로 다운로드된 파일을 계속 가져옵니다.

--progress=TYPE 진행률 게이지 유형을 선택합니다.

-N, --timestamping은 다음보다 최신 버전이 아니면 파일을 다시 검색하지 않습니다.

현지의.

--no-use-server-timestamps는 로컬 파일의 타임스탬프를 다음과 같이 설정하지 않습니다.

서버에 있는 것.

 

-S, --server-response 인쇄 서버 응답.

--spider는 아무것도 다운로드하지 않습니다.

-T, --timeout=SECONDS 모든 시간 초과 값을 SECONDS로 설정합니다.

--dns-timeout=SECS는 DNS 조회 시간 초과를 SECS로 설정합니다.

--connect-timeout=SECS 연결 시간 초과를 SECS로 설정합니다.

--read-timeout=SECS는 읽기 제한 시간을 SECS로 설정합니다.

-w, --wait=SECONDS 검색 사이에 SECONDS를 기다립니다.

--waitretry=SECONDS 대기 1..검색 재시도 사이의 SECONDS.

--random-wait from 0.5*WAIT...1.5*WAIT 검색 사이의 초.

--no-proxy는 명시적으로 프록시를 끕니다.

-Q, --quota=NUMBER 검색 할당량을 NUMBER로 설정합니다.

--bind-address=ADDRESS는 로컬 호스트의 ADDRESS(호스트 이름 또는 IP)에 바인드합니다.

--limit-rate=RATE 다운로드 속도를 RATE로 제한합니다.

--no-dns-cache 캐싱 DNS 조회를 비활성화합니다.

--restrict-file-names=OS 파일 이름의 문자를 OS가 허용하는 문자로 제한합니다.

--ignore-case 파일/디렉토리를 일치시킬 때 대소문자를 무시합니다.

-4, --inet4-only IPv4 주소에만 연결합니다.

-6, --inet6-only IPv6 주소에만 연결합니다.

--prefer-family=FAMILY는 지정된 가족의 주소에 먼저 연결하고,

IPv6, IPv4 또는 없음 중 하나입니다.

--user=USER는 ftp와 http 사용자를 모두 USER로 설정합니다.

--password=PASS ftp 및 http 암호를 모두 PASS로 설정합니다.

--ask-password 암호를 묻습니다.

--no-iri IRI 지원을 끕니다.

--local-encoding=ENC IRI에 대한 로컬 인코딩으로 ENC를 사용합니다.

--remote-encoding=ENC 기본 원격 인코딩으로 ENC를 사용합니다.

--unlink 클로버 전에 파일을 제거합니다.

 

디렉토리:

-nd, --no-directories는 디렉토리를 생성하지 않습니다.

-x, --force-directories는 디렉터리를 강제로 생성합니다.

-nH, --no-host-directories는 호스트 디렉토리를 생성하지 않습니다.

--protocol-directories는 디렉토리에서 프로토콜 이름을 사용합니다.

-P, --directory-prefix=PREFIX 파일을 PREFIX/...에 저장합니다.

--cut-dirs=NUMBER는 NUMBER개의 원격 디렉터리 구성 요소를 무시합니다.

 

HTTP 옵션:

--http-user=USER http 사용자를 USER로 설정합니다.

--http-password=PASS http 비밀번호를 PASS로 설정합니다.

--no-cache는 서버 캐시 데이터를 허용하지 않습니다.

--default-page=NAME 기본 페이지 이름을 변경합니다(일반적으로

이것은 `index.html'입니다.).

-E, --adjust-extension HTML/CSS 문서를 적절한 확장자로 저장합니다.

--ignore-length 'Content-Length' 헤더 필드를 무시합니다.

--header=STRING 헤더 사이에 STRING을 삽입합니다.

--max-redirect 페이지당 허용되는 최대 리디렉션.

--proxy-user=USER는 USER를 프록시 사용자 이름으로 설정합니다.

--proxy-password=PASS PASS를 프록시 비밀번호로 설정합니다.

--referer=URL은 HTTP 요청에 `Referer: URL' 헤더를 포함합니다.

--save-headers HTTP 헤더를 파일에 저장합니다.

-U, --user-agent=AGENT는 Wget/VERSION 대신 AGENT로 식별합니다.

--no-http-keep-alive HTTP 연결 유지(영구 연결)를 비활성화합니다.

--no-cookies는 쿠키를 사용하지 않습니다.

--load-cookies=FILE 세션 전에 FILE에서 쿠키를 로드합니다.

--save-cookies=FILE 세션 후 쿠키를 FILE에 저장합니다.

--keep-session-cookies 세션(비영구) 쿠키를 로드하고 저장합니다.

--post-data=STRING POST 방식을 사용합니다. STRING을 데이터로 보냅니다.

--post-file=FILE은 POST 방식을 사용합니다. FILE의 내용을 보냅니다.

--content-disposition은 다음과 같은 경우 Content-Disposition 헤더를 존중합니다.

로컬 파일 이름 선택(실험).

--content-on-error는 서버 오류에 대해 수신된 내용을 출력합니다.

--auth-no-challenge 기본 HTTP 인증 정보 보내기

먼저 서버를 기다리지 않고

도전.

 

HTTPS(SSL/TLS) 옵션:

--secure-protocol=PR 보안 프로토콜 선택, auto, SSLv2,

SSLv3, TLSv1, TLSv1_1 및 TLSv1_2.

--no-check-certificate는 서버의 인증서를 확인하지 않습니다.

--certificate=FILE 클라이언트 인증서 파일.

--certificate-type=TYPE 클라이언트 인증서 유형, PEM 또는 DER.

--private-key=FILE 개인 키 파일.

--private-key-type=TYPE 개인 키 유형, PEM 또는 DER.

--ca-certificate=CA 번들을 포함하는 FILE 파일.

--ca-directory=CA의 해시 목록이 저장되는 DIR 디렉토리.

--random-file=SSL PRNG를 시드하기 위한 임의 데이터가 있는 FILE 파일.

--egd-file=임의의 데이터로 EGD 소켓의 이름을 지정하는 FILE 파일.

 

FTP 옵션:

--ftp-user=USER ftp 사용자를 USER로 설정합니다.

--ftp-password=PASS ftp 암호를 PASS로 설정합니다.

--no-remove-listing은 `.listing' 파일을 제거하지 않습니다.

--no-glob FTP 파일 이름 글로빙을 끕니다.

--no-passive-ftp "수동" 전송 모드를 비활성화합니다.

--preserve-permissions는 원격 파일 권한을 유지합니다.

--retr-symlinks 재귀할 때 연결된 파일(dir이 아님)을 가져옵니다.

 

WARC 옵션:

--warc-file=FILENAME 요청/응답 데이터를 .warc.gz 파일에 저장합니다.

--warc-header=STRING warcinfo 레코드에 STRING을 삽입합니다.

--warc-max-size=NUMBER WARC 파일의 최대 크기를 NUMBER로 설정합니다.

--warc-cdx CDX 인덱스 파일을 씁니다.

--warc-dedup=FILENAME은 이 CDX 파일에 나열된 레코드를 저장하지 않습니다.

--no-warc-compression은 WARC 파일을 GZIP으로 압축하지 않습니다.

--no-warc-digests는 SHA1 다이제스트를 계산하지 않습니다.

--no-warc-keep-log는 WARC 레코드에 로그 파일을 저장하지 않습니다.

--warc-tempdir=에 의해 생성된 임시 파일의 DIRECTORY 위치

WARC 작가.

 

Recursive 다운로드:

-r, --recursive 재귀 다운로드를 지정합니다.

-l, --level=NUMBER 최대 재귀 깊이(inf 또는 무한의 경우 0).

--delete-after 파일을 다운로드한 후 로컬에서 삭제합니다.

-k, --convert-links 다운로드한 HTML 또는 CSS의 링크가 다음을 가리키도록 합니다.

로컬 파일.

--backups=N 파일 X를 쓰기 전에 최대 N개의 백업 파일을 회전합니다.

-K, --backup-converted 파일 X를 변환하기 전에 X.orig로 백업합니다.

-m, --mirror -N -r -l inf --no-remove-listing의 단축키입니다.

-p, --page-requisites는 HTML 페이지를 표시하는 데 필요한 모든 이미지 등을 가져옵니다.

--strict-comments는 HTML 주석의 엄격한(SGML) 처리를 켭니다.

 

Recursive 수락/거부:

-A, --accept=LIST 허용되는 확장의 쉼표로 구분된 목록입니다.

-R, --reject=LIST 거부된 확장의 쉼표로 구분된 목록입니다.

--accept-regex=허용된 URL과 일치하는 REGEX 정규식.

--reject-regex=거부된 URL과 일치하는 REGEX 정규식.

--regex-type=TYPE 정규식 유형(posix|pcre).

-D, --domains=LIST 허용 도메인의 쉼표로 구분된 목록입니다.

--exclude-domains=LIST 거부된 도메인의 쉼표로 구분된 목록입니다.

--follow-ftp HTML 문서에서 FTP 링크를 따릅니다.

--follow-tags=LIST 추적하는 HTML 태그의 쉼표로 구분된 목록입니다.

--ignore-tags=LIST 무시된 HTML 태그의 쉼표로 구분된 목록입니다.

-H, --span-hosts 재귀적일 때 외부 호스트로 이동합니다.

-L, --relative는 상대 링크만 따릅니다.

-I, --include-directories=허용 디렉토리 목록.

--trust-server-names는 리디렉션에 의해 지정된 이름을 사용합니다.

url 마지막 구성 요소.

-X, --exclude-directories=제외된 디렉토리 목록.

-np, --no-parent는 상위 디렉토리로 올라가지 않습니다.

댓글

Designed by JB FACTORY