У меня есть строка даты, которую я могу проанализировать и отформатировать с помощью команды date из сценария bash.
date
Но как определить, сколько дней назад эта дата была из моего сценария?Я хотел бы закончить с номером.
Вы можете сделать некоторую арифметику даты:
DATE=01/02/2010 echo $(( ( $(date +%s) - $(date -d "$DATE" +%s) ) /(24 * 60 * 60 ) ))
Использовать саму дату в качестве значения даты для даты.Пример 5 дней назад:
date -d "`date`-5days"
Преобразуйте вашу дату и теперь в секунды с начала эпохи, вычтите, разделите на количество секунд в дне:
#!/bin/bash ((a = `date -d "Wed Jan 12 02:33:22 PST 2011" +%s`)) ((b = `date +%s`)) echo $(( (b-a) / (60*60*24)))