当我运行curl命令并将数据导向文件时,我会按预期收回网站的内容。
$ curl "www.site.com" > file.txt
$ head file.txt
Top of site
...
但是,此命令显示了一个我不想要的进度条:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 328k 100 328k 0 0 467k 0 --:--:-- --:--:-- --:--:-- 467k
我可以通过传递-silent
标志来使进度条静音,但我的文件输出将附加头部内容:
$ curl -silient "www.site.com" > file.txt
$ head file.txt
HTTP/1.1 200 OK
Content-Security-Policy: default-src 'none'
X-XSS-Protection: 1; mode=block
X-Frame-Options: deny
X-Content-Type-Options: nosniff
Strict-Transport-Security: max-age=31536000
ETag: "29647904ffa6a6b36cf3483b325138cab9447a13"
Content-Type: text/plain; charset=utf-8
Cache-Control: max-age=300
Content-Length: 335978
如何使进度条静音并避免将头部内容发送到文件?
根据提供的标志,似乎我只能得到一个或另一个。
这就是我现在正在做的解决问题的方法,但我不确定将进度条以及可能的任何错误传输到/ dev / null是否是个好主意。
curl "www.site.com" > file.txt 2> /dev/null
我不认为这是一个好主意的原因是因为它可能会干扰我关心的实际错误。我希望利用silent
标志,如果这是它的目的。
我还尝试使用-o
输出到文件的所有相同命令,但不会占上风。
答案 0 :(得分:9)
您需要使用两个短划线--silent
。您的“选项”-silient
(原文如此!)可启用-s
,-i
,-l
,-e
,-n
和-t
选项。
-i
包含HTTP标头。
答案 1 :(得分:6)
试试这个:
curl --silent "www.site.com" > file.txt
答案 2 :(得分:0)
同时使用-q
和-s
可以达到目的。