无法使用wget检索完整文件

时间:2014-12-24 04:44:53

标签: xml linux unix ubuntu wget

我正在尝试从一个来源下载feed.xml。我成功地能够在Windows中下载它。虽然它在linux / unix机器上失败了。

这些是我的窗口上的请求标头和响应标头。

Response Header: Connection keep-alive
Content-Disposition attachment; filename="feeds.xml";
Content-Type text/xml
Date Wed, 24 Dec 2014 04:18:59 GMT
Expires Mon, 1 Jan 2000 00:00:00 GMT
Server nginx/1.2.3
Transfer-Encoding chunked
X-Powered-By PHP/5.3.13

Request: Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding gzip, deflate
Accept-Language en-US,en;q=0.5
Connection keep-alive
Host www2.xyz.com
User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0

我的linux / unix代码/命令从url下载文件。

wget --no-check-certificate -O  feed.xml 'http://www2.xyz.com/feed.php?id=XXX-YYY&pass=*******'

在Windows中,它的大小是980MB,而linux的大小是12MB。如果我正在尝试less feed.xml,那么它会在linux / Unix中显示此消息。

"feed.xml" may be a binary file.  See it anyway?

我也试过设置标题,它给了我这样的响应,但没有下载完整的文件。

  wget  -S --header="Accept-Encoding: gzip"  'http://www2.xyz.com'

  Connecting to www2.XYZ.com|***.**.**.**|:80... connected.
  HTTP request sent, awaiting response...

  HTTP/1.1 200 OK
  Server: nginx/1.2.3
  Date: Wed, 24 Dec 2014 03:50:51 GMT
  Content-Type: text/xml
  Content-Length: 12252156
  Connection: keep-alive
  X-Powered-By: PHP/5.3.13
  Expires: Mon, 1 Jan 2000 00:00:00 GMT
  Content-encoding: gzip
  Content-disposition: attachment; filename="feeds.xml";
  Length: 12252156 (12M) [text/xml]

如何解决此问题,可以在linux下载feed.xml。请帮助。

1 个答案:

答案 0 :(得分:3)

标题信息显示内容编码是gzip。可能是因为Windows上的gzip为你扩展了这个,而且在Linux上它并没有用你的压缩文件。

尝试这样做:

gzcat feed.xml > feed_expanded.xml

或者如果你没有gzcat:

mv feed.xml feed.xml.gz; gunzip feed.xml.gz