LINUX.ORG.RU

История изменений

Исправление legolegs, (текущая версия) :

Не надо самому работать с датами (вычитать дни). Календарь - это сложно, високосные года и 61е секунды так и норовят укусить. Есть специальные инструменты для работы с датами. В bash проще сначала перевести в unixtime.

date1="2020-01-25"
if [[ "$(date -d "now 3 days ago 00:00" +%s)" -eq "$(date -d "$date1" +%s)" ]]
then
   echo "время истекло"
else
   echo "еще не время"
fi

PS %d.%m.%Y - плохой формат даты - криво сортируется, не парсится стандартными средствами.

Исправление legolegs, :

Не надо самому работать с датами (вычитать дни). Календарь - это сложно, високосные года и 61е минуты так и норовят укусить. Есть специальные инструменты для работы с датами. В bash проще сначала перевести в unixtime.

date1="2020-01-25"
if [[ "$(date -d "now 3 days ago 00:00" +%s)" -eq "$(date -d "$date1" +%s)" ]]
then
   echo "время истекло"
else
   echo "еще не время"
fi

PS %d.%m.%Y - плохой формат даты - криво сортируется, не парсится стандартными средствами.

Исправление legolegs, :

Не надо самому работать с датами (вычитать дни). Календарь - это сложно. Ест специальные инструменты для работы с датами. В bash проще сначала перевести в unixtime.

date1="2020-01-25"
if [[ "$(date -d "now 3 days ago 00:00" +%s)" -eq "$(date -d "$date1" +%s)" ]]
then
   echo "время истекло"
else
   echo "еще не время"
fi

PS %d.%m.%Y - плохой формат даты - криво сортируется, не парсится стандартными средствами.

Исходная версия legolegs, :

Не надо самому работать с датами (вычитать дни). Календарь - это сложно. Ест специальные инструменты для работы с датами. В bash проще сначала перевести в unixtime.

date1="2020-01-25"
if [[ "$(date -d "now 3 days ago 00:00" +%s)" -eq "$(date -d "$date1" +%s)" ]]
then
   echo "время истекло"
else
   echo "еще не время"
fi

PS %d.%m.%Y - плохой формат даты - криво сортируется, не парсится стандартными средствами.