ТРФ:
$ grep -Pom1 'Transferred:.*/ \K[^,]*' "$logfile"
577.080 MBytes
-P
включить perl -совместимые регулярные выражения и \K
не включать элементы до \K
в согласованный вывод -o
выводить только совпадающие части строки -m1
выйти после первой совпадающей строки, чтобы исключить вторую Transferred:
строку ТРС:
$ grep -Po 'Transferred:[^,]*,[^,]*, \K[^,]*' "$logfile"
12.660 MBytes/s
-m1
не нужно, так как шаблон содержит более одной запятой ОШИБКА:
$ grep -Po 'Errors:[[:space:]]*\K.*' "$logfile"
0
ТИМ:
$ grep -Po 'Elapsed time:[[:space:]]*\K.*' "$logfile"
45.5s
Количество переданных файлов:(это первое из двух чисел)
$ grep -Po 'Transferred:[[:space:]]*\K[0-9]+(?= /)' "$logfile"
2
(?= /)
— это положительный прогноз (PCRE ), где мы ищем пробел и /
. Эта часть, как и \K
, не включается в совпадающий вывод и необходима, чтобы не совпадать с первой строкой Transferred
.