shell脚本两个日期值比较
新手问的问题比较白目!shell脚本中定义两个日期,格式20140101这种,比较日期输出较大的!...
新手问的问题比较白目!shell脚本中定义两个日期,格式20140101这种,比较日期输出较大的!
展开
2个回答
展开全部
这种标准格式的时期应该是无法比较的,你应该给这个时间转化为linux的绝对时间然后比较大小,给你share一个我之前写的一个计算一个命令执行时间的的脚本,你一看就明白了。
#########################
BEGIN=`date +"%Y-%m-%d %H:%M:%S"`
bkup_system|tee -a bkup_time.log
END=`date +"%Y-%m-%d %H:%M:%S"`
print $BEGIN begin back up|tee -a bkup_time.log
print $END end buck up|tee -a bkup_time.log
#时间转化
Sys_data_begin=`date -d "$BEGIN" +%s`
Sys_data_end=`date -d "$END" +%s`
#计算间隔,可以根据间隔的正负来比较你时间的大小
INTER=`expr $Sys_data_end - $Sys_data_begin`
echo Total time do back up is $INTER s|tee -a bkup_time.log
########################
#########################
BEGIN=`date +"%Y-%m-%d %H:%M:%S"`
bkup_system|tee -a bkup_time.log
END=`date +"%Y-%m-%d %H:%M:%S"`
print $BEGIN begin back up|tee -a bkup_time.log
print $END end buck up|tee -a bkup_time.log
#时间转化
Sys_data_begin=`date -d "$BEGIN" +%s`
Sys_data_end=`date -d "$END" +%s`
#计算间隔,可以根据间隔的正负来比较你时间的大小
INTER=`expr $Sys_data_end - $Sys_data_begin`
echo Total time do back up is $INTER s|tee -a bkup_time.log
########################
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
date1=20140101
date2=20140303
if [ $date2 -ge $date1 ]; then
echo $date2
else
echo $date1
fi
相等的情况就无所谓哪个了,输出其中的任一个都是一样的。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询