Mac终端卷曲文本文件

时间:2013-08-26 05:36:22

标签: macos curl

我正在尝试从本地网络服务器下载CSV文件(网络服务器在信号调节工具上运行):

curl -O http://10.0.0.139/crv01.csv

curl的输出只是奇怪的符号。如果我在Safari中放入相同的URL,则会正确显示CSV文件。 curl有编码问题吗?

我尝试了详细的选项,它给出了:

Gunthers-MacBook-Pro:Documents guenther$ curl -v -O http://10.0.0.141/crv01.csv
* About to connect() to 10.0.0.141 port 80 (#0)
*   Trying 10.0.0.141...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0* connected
* Connected to 10.0.0.141 (10.0.0.141) port 80 (#0)
> GET /crv01.csv HTTP/1.1
> User-Agent: curl/7.24.0 (x86_64-apple-darwin12.0) libcurl/7.24.0 OpenSSL/0.9.8x zlib/1.2.5
> Host: 10.0.0.141
> Accept: */*
> 
< HTTP/1.1 200 OK
< Date: Mon Aug 26 21:03:12 2013
< Server: VEGA-HTTP-SERVER
< Cache-Control: public, max-age=3600
< Content-type: text/plain
< Connection: Close
< Content-Encoding: gzip
< Content-Length: 226
< 
{ [data not shown]
100   226  100   226    0     0   1883      0 --:--:-- --:--:-- --:--:--  1965
* Closing connection #0
Gunthers-MacBook-Pro:Documents guenther$ vi crv01.csv

^_<8b>^H^@^@^@^@^@^@^C}<92>Á
<83>0^L<86>ï<82>ï xÙ^N+I;kkO²<95>!l^N6õ-ÆÞÿ¶zФ¬4Ç~$ÿ<9f>?­_~^YÞÃs¬P@YÔ<97>ùµø
ÐMýí4~E<85>áñÚOÞMÃû¥¿Ïþð9<96><85>l^D^X!^A<95>CÛ)Õ¡uR´^RBETB<96>b<96>J¢^X^F^G<87>LWª^?ªwWÀt·^F<99>n<82>&tY/Ó]M­®^X=g]5D^S½:KÛ,5;Õv^]^]®À\Ù^\EÈRÌRÊ*¡<8b><94>U<8a>RV)JY¥(e¥^M<84><8a>öEÊ*E^Mmd TÜk<89>¶^AÆ÷eÿy<9b>ü^C»üß{E^C^@^@

网页的源代码(谷歌浏览器)是普通的cdv文件。 CSV文件是由。创建的 http://www.vega.com/en/Signal-conditioning-instrument-VEGAMET391.htm

--text-ascii选项也没有帮助!

3 个答案:

答案 0 :(得分:3)

似乎页面被压缩回送(参见标题“Content-Encoding:gzip”),即使curl没有要求它。如果你要求它,curl会在收到它时自动为你解压缩。尝试:

curl --compressed -O http://10.0.0.139/crv01.csv

答案 1 :(得分:0)

该命令应该有效,在本地提供csv文件时,它在我的系统(10.6)上正常工作。

您可以尝试使用verbose on命令来查看是否存在任何问题:

curl -v -O http://10.0.0.139/crv01.csv

答案 2 :(得分:0)

如何创建CSV?通过Excel或它始终是原生文本?我怀疑Safari正在渲染而忽略了无关的二进制数据。

您可以在Safari中查看来源,并确保它是明确的。

同时尝试curl --trace-ascii请求ASCII上下文。

修改 从您的详细输出,看起来该文件是gzip压缩。 请尝试将其另存为.gz文件,然后再保存为gunzip crv01.gz

curl http://10.0.0.139/crv01.csv -o crv01.gz
gunzip crv01.gz

如果有更多crv个文件,您也可以同时下载一系列文件:

curl "http://10.0.0.139/crv[01-50].csv" -o crv#1.gz