获取两个日期间隔时间的shell/ target=_blank class=infotextkey>shell脚本,对于正在研究shell操作日期的朋友来讲,这个小例子,值得研究。
#!/bin/sh
# 获取所在季度的第一天,到昨天的日期间隔
# link:www.jb200.com
# date:2013/2/27
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