Использование cut для разбора вывода vnstat

Я возился с этим некоторое время и просто не могу понять это правильно. Я пытаюсь проанализировать вывод vnstat для генерации журнала, используя команду cut, чтобы вытащить использование полосы пропускания и количество пакетов в секунду. Необработанный вывод выглядит так, как будто он разделен табуляцией, но вывод, который я получаю, используя без указания разделителя, выглядит как пробел. Ничего не указав (с разделителями табуляции) или используя -d' ' и -F# для того, что поле не работает. Я собираюсь использовать регулярное выражение вместо этого?

vnstat -i venet0 -tr | grep 'rx' | cut -f1

без указания разделителя

rx 0.06 kbit/s 0 packets/s

сырая продукция

vnstat -i venet0 -tr
8 packets sampled in 5 seconds
Traffic average for venet0

  rx         0.25 kbit/s             0 packets/s
  tx         0.54 kbit/s             0 packets/s

1 ответ

Как отмечено в комментарии стилдрайвера выше, ответ таков:

vnstat -i venet0 -tr | awk '$1 == "rx" {print $2,$3}'
Другие вопросы по тегам