Shell中获取两个日期的间隔时间


Shell获取昨天天所在季度的第一天,到昨天的日期间隔
#!/bin/sh
day=`date -d "1 days ago " "+%Y%m%d"`;
year=`expr substr ${day} 1 4`;
month=`expr substr ${day} 5 2`;
s_date=$year"0101"
if [ "$month" == "01" ] || [ "$month" == "02" ] || [ "$month" == "03" ];then
s_date=$year"0101"
elif [ "$month" == "04" ] || [ "$month" == "05" ] || [ "$month" == "06" ];then
s_date=$year"0401"
elif [ "$month" == "07" ] || [ "$month" == "08" ] || [ "$month" == "09" ];then
s_date=$year"0701"
elif [ "$month" == "10" ] || [ "$month" == "11" ] || [ "$month" == "12" ];then
s_date=$year"1001"
fi
e_date=$day
sys_s_data=`date -d  "$s_date" +%s`
sys_e_data=`date -d   "$e_date" +%s`
interval=`expr $sys_e_data - $sys_s_data`
daycount=`expr $interval / 3600 / 24 + 1`

echo $daycount 执行输出:
 62

相关内容