我想比较 shell 脚本中的日期。 我使用的逻辑如下:
$date_1="Tue Nov 25 23:50:01 CST 2014"
$date_2=$(date)
if [ $date_2 -eq $date_1 ] ; then
echo "$date2 is equal to $date_1"
else
echo "$date2 is not equal to $date_1"
fi
但是,当我每分钟使用 crontab
执行脚本时,
我在日志中收到以下消息,该消息不正确:
Tue Nov 25 23:50:01 CST 2014 is not equal to Tue Nov 25 23:50:01 CST 2014
你能帮我摆脱这种尴尬的境地吗?
最佳答案
假设该作业每分钟运行一次。你可以这样做:
date_1="Tue Nov 25 23:50:01 CST 2014"
dt1=$(date -d "$date_1" '+%Y%m%d%H%M')
dt2=$(date '+%Y%m%d%H%M')
if [ "$dt1" -eq "$dt2" ]; then
echo "$dt2 is equal to $date_1"
else
echo "$dt2 is not equal to $date_1"
fi
关于shell - 日期比较在 shell 脚本中无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27142501/