请注意,这个问题与How do I get cURL to not show the progress bar?明显不同,尽管这个问题的有效答案可能足以说明另一个问题。
我有一个脚本,它将cURL的stderr
记录到一个文件中。我们将使用这个脚本作为示例:
curl -Lo /dev/null stackoverflow.com 2>/tmp/foo
当我检查该文件时,它看起来像这样:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
^M 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0^M100 143 100 143 0 0 1190 0 --:--:-- --:--:-- --:--:-- 1191
^M 97 244k 97 239k 0 0 688k 0 --:--:-- --:--:-- --:--:-- 688k^M100 244k 100 244k 0 0 701k 0 --:--:-- --:--:-- --:--:-- 4974k
这对我来说完全是垃圾。我想要的统计数据没有动画进度条。我可以用一些标准的unix工具解析出来。但是,我想也许一些参数和/或termcap/terminfo的组合也可以工作。
请指示。
这种简单的后期处理可以工作,因为它不是动画:
head -n2 /tmp/foo; tail -n1 /tmp/foo
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 245k 100 245k 0 0 393k 0 --:--:-- --:--:-- --:--:-- 393k
2条答案
按热度按时间0tdrvxhp1#
如果没有更好的建议,我就将就一下:
x3naxklr2#
自curl 7.67.0(2019-11-06)以来,
--no-progress-meter
就实现了这一点,除此之外别无他法。因此,您可以用途:
如果成功,则不打印任何内容,如果失败,则打印错误。