Wget 출력 문서 및 헤더를 STDOUT에


116

wget을 사용하여 문서 본문과 헤더를 stdout에 출력하려고합니다. wget -S -O - http://google.com

그러나 그것은 html 문서만을 보여줍니다.

감사

UPD :

일했다 wget --save-headers --output-document - http://google.com

wget --version GNU Wget 1.11.4 수정 된 Red Hat 표시


난 그냥이 큰 일을하지만 노력 --save-headers실제로이었다-save-headers
크리스 Rymer

그리고 wget -qS <url>단지에 대한 HTTP 헤더 (EQ합니다. curl -IL)

답변:


168

추가 헤더없이 다음을 시도하십시오.

wget -qO- www.google.com

후행 -. 이것은 -O파일로 이동하기 위한 일반적인 명령 인수의 일부 이지만 파일을 지정하는 데 사용하지 않기 >때문에 쉘로 이동합니다. 당신은 사용할 수 있습니다 -qO-또는 -qO -.


2
O 뒤에 여분은 무엇입니까?
codecowboy 2014

1
@codecowboy 나는 여분의 대시를 설명하기 위해 대답을 장식했습니다.
Joseph Lust

3
-S옵션은 내 alpineLinux 컨테이너 에서 지원되지 않았습니다 . 나는 그것을 생략하고 모든 좋았다
기독교 Bongiorno

1
GNU man 페이지에 따르면 "-가 파일로 사용되면 문서가 표준 출력으로 인쇄되어 링크 변환이 비활성화됩니다." 선행 공백으로 더 명확하게 작성됩니다.
Josh Habdas

4
이 대답은 말이되지 않습니다. OP는 헤더를 숨기지 않고 표시하도록 요청 함
aexl

45

wget -S -O - http://google.com예상대로 작동 하지만 주의해야합니다. 헤더는 디버깅 정보로 간주 되어 표준 출력이 아닌 표준 오류 로 전송됩니다 . 표준 출력을 파일이나 다른 프로세스로 리디렉션하는 경우 문서 내용 만 가져옵니다.

가능한 해결책으로 표준 오류를 표준 출력으로 리디렉션 할 수 있습니다. 예를 들면 다음과 bash같습니다.

$ wget -q -S -O - 2>&1 | grep ...

또는

$ wget -q -S -O - 1>wget.txt 2>&1

-q옵션은 진행률 표시 줄과 다른 성가 시게 수다스러운 wget출력 부분을 ​​억제합니다 .


1
-S옵션은 내 alpineLinux 컨테이너 에서 지원되지 않았습니다 . 나는 그것을 생략하고 모든 좋았다
기독교 Bongiorno

@ChristianBongiorno로 적절한 wget을 설치할 수 있습니다 apk add wget. 그렇지 않으면 busybox 버전 만 사용됩니다.
AndreKR

22

여기에서 작동합니다.

    $ wget -S -O - http://google.com
HTTP request sent, awaiting response... 
  HTTP/1.1 301 Moved Permanently
  Location: http://www.google.com/
  Content-Type: text/html; charset=UTF-8
  Date: Sat, 25 Aug 2012 10:15:38 GMT
  Expires: Mon, 24 Sep 2012 10:15:38 GMT
  Cache-Control: public, max-age=2592000
  Server: gws
  Content-Length: 219
  X-XSS-Protection: 1; mode=block
  X-Frame-Options: SAMEORIGIN
Location: http://www.google.com/ [following]
--2012-08-25 12:20:29--  http://www.google.com/
Resolving www.google.com (www.google.com)... 173.194.69.99, 173.194.69.104, 173.194.69.106, ...

  ...skipped a few more redirections ...

    [<=>                                                                                                                                     ] 0           --.-K/s              
<!doctype html><html itemscope="itemscope" itemtype="http://schema.org/WebPage"><head><meta itemprop="image" content="/images/google_favicon_128.png"><ti 

... skipped ...

wget ( ~$ wget --version GNU Wget 1.14 built on linux-gnu.) 을 업데이트해야 할 수도 있습니다.


7

이것은 헤더로 응답을 인쇄하는 데 도움이되었습니다.

wget --server-response http://www.example.com/

1
--spiderarg 를 추가 할 수 있습니다 . 이 유용한 원인은 페이지 콘텐츠를 다운로드하지 않습니다.
Antonio Feitosa 19

3

작동하지 않습니다.

wget -q -S -O - google.com 1>wget.txt 2>&1

리디렉션은 오른쪽에서 왼쪽으로 평가되므로 html을 wget.txt로, 헤더를 STDOUT으로 보냅니다.

wget -q -S -O - google.com 2>&1 1>wget.txt
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.