Ответ 1
Чтобы преобразовать дату в секундах с эпохи:
date --date="19-FEB-12" +%s
Текущая эпоха:
date +%s
Итак, поскольку ваши даты в прошлом:
NOW=`date +%s`
THEN=`date --date="19-FEB-12" +%s`
let DIFF=$NOW-$THEN
echo "The difference is: $DIFF"
Используя команду BSD date
, вам понадобится
$ date -j -f "%d-%B-%y" 19-FEB-12 +%s
Отличия от GNU date
:
-
-j
предотвращает попыткуdate
установить часы - Формат ввода должен быть явно установлен с помощью
-f
- Дата ввода является регулярным аргументом, а не опцией (
-d
) - Если время не указано с датой, вместо этого используйте текущее время полуночи.