Временная метка вниз / вверх - PullRequest
0 голосов
/ 22 декабря 2018

Новое в коде, поэтому, пожалуйста, будьте осторожны.Я искал до головных болей и нашел, что я пытаюсь сделать, но пока не совсем.

У меня есть файл журнала, который показывает состояние соединения.Моя цель состоит в том, чтобы иметь одну строку, которая будет вычислять разницу во времени между временем ВНИЗ и ВВЕРХ.

cat file.txt | grep device | grep status_change | awk {time column} | awk 'present Up time next to Down time'

Так что теперь мои показы времени изменились с:

10:30:00
10:31:00

до

10:30:00 10:31:00

Можно ли добавить в конец моей строки код для вычисления разницы во времени?

cat file.txt | grep device | grep status_change | awk {time column} | awk 'present Up time next to Down time' | awk '{print $3=$2-$1}'

1:00

Что-то в этом роде.Если нет, то я буду продолжать биться над сценарием bash.

Опять я новичок в этом, и я извинюсь за грубые примеры.Я также благодарен за любую помощь.

1 Ответ

0 голосов
/ 22 декабря 2018

Результат в секундах:

echo 10:30:00 10:31:00|awk '{dt=strftime("%Y %m %d ");gsub(":"," ",$1);gsub(":"," ",$2);print mktime(dt $2)-mktime(dt $1);}'
# => 60

Добавление части awk к вашему кластеру команд.
Вы можете дополнительно отформатировать разницу во времени в соответствии с тем, что вам нужно.
Вы можете проверить время awkфункции здесь .
PS: это для GNU awk.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...