如何让 cURL 不显示进度条?

新手上路,请多包涵

我正在尝试在脚本中使用 cURL 并让它 显示进度条。

我已经尝试了 -s-silent-S-quiet 选项,但没有一个工作

这是我尝试过的典型命令:

 curl -s http://google.com > temp.html

我只在将其推送到文件时获得进度条,所以 curl -s http://google.com 没有进度条,但 curl -s http://google.com > temp.html 有。

原文由 adammenges 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2.7k
2 个回答
curl -s http://google.com > temp.html

适用于 Ubuntu 9.10 上的 curl 版本 7.19.5(无进度条)。但是,如果由于某种原因在您的平台上不起作用,您总是可以将 stderr 重定向到 /dev/null:

 curl  http://google.com 2>/dev/null > temp.html

原文由 unutbu 发布,翻译遵循 CC BY-SA 3.0 许可协议

在 Ubuntu 上的 curl 版本 7.22.0 和 OSX 上的 7.24.0 中, 不显示进度显示错误 的解决方案是同时使用 -s ( --silent ) 和 -S ( --show-error ) 像这样:

 curl -sS http://google.com > temp.html

这适用于重定向输出 > /some/file ,管道输出 | less 并为我直接输出到终端。

更新:由于 curl 7.67.0 有一个新选项 --no-progress-meter 正是这样做的,没有别的,请参阅 clonejo 的答案 以获取更多详细信息。

原文由 chmac 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题