Различие между датами в час в ударе

Как я могу найти различие между двумя датами, которые находятся в формате

date +"%H-%M-%d-%m-%Y"

И также я хочу различие в часах. Как я могу найти это использование единственной команды.

0
задан 25 February 2016 в 14:04

1 ответ

Если даты находятся в файле по одной на строку, например, скажем:

16-49-24-02-2016
16-49-25-02-2016

Тогда вы можете использовать awk:

awk -F- 'NR==1 {
  then = mktime(sprintf("%s %s %s %s %s 00", $5, $4, $3, $1, $2))
}
NR==2 {
  now = mktime(sprintf("%s %s %s %s %s 00", $5, $4, $3, $1, $2)); 
  printf "%s\n", (now - then)/3600
}' input.txt

] функция ожидает время в YYYY MM DD HH MM SS, поэтому мы разбиваем данную временную метку и конвертируем ее в этот формат (используя 00 для секунд). Разница между временными метками заключается в секундах, поэтому мы делим на 3600, чтобы получить часы.

1
ответ дан 29 September 2019 в 11:27

Другие вопросы по тегам:

Похожие вопросы: