我試圖輸出文檔身體和頭部被wget -S -O - http://google.com
Wget的輸出文檔和頭到STDOUT
與wget的到stdout,但只顯示HTML的Docment。
感謝
UPD:
工作這麼wget --save-headers --output-document - http://google.com
wget --version
顯示GNU Wget的1.11.4紅帽修改
我試圖輸出文檔身體和頭部被wget -S -O - http://google.com
Wget的輸出文檔和頭到STDOUT
與wget的到stdout,但只顯示HTML的Docment。
感謝
UPD:
工作這麼wget --save-headers --output-document - http://google.com
wget --version
顯示GNU Wget的1.11.4紅帽修改
它在這裏工作:
$ 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.
)
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
輸出的一些其他煩人健談部分。
嘗試以下,沒有多餘的頭
wget -qO- www.google.com
注後-
。這是-O
的常規命令參數的一部分,以便剔除文件,但由於我們不使用>
來指向文件,因此它會發送到shell。您可以使用-qO-
或-qO -
。
什麼是額外的 - 在O之後? – codecowboy
@codecowboy我點綴瞭解釋額外短劃線的答案。 –
'-S'選項在我的'alpine' linux容器上不受支持。我省略了,一切都很好 –
這是行不通的:
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
感謝您指出的標準錯誤問題,和-q標誌。 –
'-S'選項在我的'alpine' linux容器上不受支持。我省略了,一切都很好 –