Размер прост найти после размера =, я могу найти размер и поместить его в файл, но удаление всего кроме чисел и затем подведения итогов его с общими количествами все в одном файле просто не прибывают ко мне.
прямо сейчас я использую это;
grep 'size=' /var/log/maillog-2019* | awk ' { print $8 }' > output.txt
У меня будет попытка с awk
$ awk -F'[[:blank:],=]' '/size=/ { sum += $12; total += 1} END { print "Sum: " sum " Total:" total}' /var/log/mail.log
-F'[[:blank:],=]'
Говорит awk обрабатывать весь вид пробела, запятой и равный как разделитель полей/size=/
Выберите строки, который содержит size=
{ sum += $12; total += 1}
Выберите 12-е поле и добавьте его к sum
одновременно мы увеличиваем total
из одногоEND { print "Sum: " sum " Total:" total}
В печати конца Sum: $sum Total:$total
Например:
$ awk -F'[[:blank:],=]' '/size=/ { sum += $12; total += 1} END { print "Sum: " sum " Total:" total}' /var/log/mail.log
Sum: 1491646 Total:800
Я не знаю, будет ли это отлично работать на Вас, но это должно дать Вам довольно хорошую идею о том, как сделать это!