Как мне заставить cURL не показывать индикатор выполнения, но все же давать статистику? - PullRequest
0 голосов
/ 29 ноября 2018

Обратите внимание, что этот вопрос отчетливо отличается от Как я могу получить cURL, чтобы не отображать индикатор выполнения? хотя правильного ответа на этот вопрос, скорее всего, будет достаточно этот комментарий к этому другомувопрос.

У меня есть скрипт, который регистрирует 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

1 Ответ

0 голосов
/ 29 ноября 2018

Если я не получу более качественных предложений, я соглашусь на это:

$ curl -Lo /dev/null --stderr >(awk 'END {print "Downloaded", $2, "of", $4, "at", $7"bps"}' >/tmp/foo) stackoverflow.com
$ cat /tmp/foo
Downloaded 245k of 245k at 472kbps
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...