Манипулирование датой в сценарии оболочки AIX - PullRequest
0 голосов
/ 30 января 2012

Извините, если повторение какого-либо старого поста.Если это так, пожалуйста, перенаправьте.

Я работаю над сценарием оболочки в AIX, где мы получаем дату из файла / командной строки.Теперь я должен сравнить текущую дату с введенной датой и увидеть разницу в количестве дней.

Я пытался найти решение для Google, но везде не получилось правильное решение.

Здесь я не могу установить переменную date, так как я не являюсь пользователем root.

Любые входные данные будут очень полезны.

Ответы [ 3 ]

1 голос
/ 31 января 2012

Для всего, что немного сложнее, я бы предложил использовать datecalc (вы можете найти версию по адресу http://www.unix.com/unix-dummies-questions-answers/4870-days-elapsed-between-2-dates.html#post16559).. Она реализуется на большинстве диалектов UNIX.

0 голосов
/ 01 февраля 2012
echo $(($(($(date -d "2010-06-01" "+%s") - $(date -d "2010-05-15" "+%s"))) / 86400))

Источник: Сценарий оболочки для получения разницы в две даты

0 голосов
/ 30 января 2012

Дата Gnu имеет опцию --date, которая удовлетворяет вашим требованиям. Но так как это не доступно по умолчанию в AIX, оно вам не поможет. Таким образом, вы должны написать свой собственный код, используя awk / perl для достижения этого. Проверьте этот вопрос в stackoverflow, который дает некоторое представление об арифметике даты.

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