AIX 计算今年过了多少天了
2014-08-25 22:45
190 查看
#取系统时间 YEARDAY () { #判断闰年 #标准如果能被400整除那么为闰年 #如果能被4整除且不能被100整除那么是闰年 if [ $# -ne 1 ];then echo "Usage: $0 year" exit 1; fi FYEAR="$1" if [ `expr ${FYEAR} % 400` -eq 0 ];then FRUN="366" else if [ `expr ${FYEAR} % 4` -eq 0 ];then if [ `expr ${FYEAR} % 100` -eq 0 ];then FRUN="365" else FRUN="366" fi else FRUN="365" fi fi echo "$FRUN" exit 0; } #定义DOY函数 DOY () { #MD表示 MD=0 #天数累计 MDTOTAL=0 #计算$1的天数 LOGBACKUPDATE=`date "+%Y-%m-%d"` echo $LOGBACKUPDATE BACKYEAR=`echo $LOGBACKUPDATE|awk -F'-' '{print $1}'` BACKMONTH=`echo $LOGBACKUPDATE|awk -F'-' '{print $2}'` BACKDAY=`echo $LOGBACKUPDATE|awk -F'-' '{print $3}'` YEAR=$BACKYEAR MONTH=`echo $BACKMONTH | sed 's/^0//g'` DAY=`echo $BACKDAY | sed 's/^0//g'` i=$((MONTH -1)) #until 循环直到条件为真就停止 until [ "$i" = 0 ] do case $i in 1|3|5|7|8|10|12 ) MD=31 ;; 4|6|9|11 ) MD=30 ;; 2 ) if [ $(YEARDAY $YEAR) = 366 ] then MD=29 else MD=28 fi ;; esac (( MDTOTAL += MD )) echo $MDTOTAL (( i = i - 1 )) done TOTALDAY=`echo $(( MDTOTAL + DAY ))` echo $TOTALDAY } #以上已经计算出了月份+天数 #此时的YEAR2=2011 YEAR1=2009 DOY NUM=1 get_before=`expr $TOTALDAY - $NUM` echo $get_before
相关文章推荐
- 17周项目四,结构体计算某天是今年的多少天
- Javascript计算到今天为止今年过去了多少天
- 询问某区间内有多少满足某个要求的/某区间以某式子计算出的值(莫队算法,不修改只询问区间)
- Java中计算两个日期间隔多少天
- 怎么计算一个月有多少天
- 根据年月计算每个月有多少天和返回日期是星期几
- 一个球从100米高度自由落下,每次落地后反弹回原高度的一半; * 再落下,求在第几次之后反弹高度小于0.1米, * 并计算在这一次落地时共经过多少米?
- 根据下列信息计算在1901年1月1日至2000年12月31日间共有多少个星期天落在每月的第一天上?
- 每天一道LeetCode-----将数字集转成字母集,计算有多少种转换方式
- lua计算时间差 按照日历方式来计算时间差 而不是固定每个月都是多少天来计算
- 计算变量u中有多少个非0位
- java 使用Calendar类计算每月有多少自然周,并输出每周的开始和结束日期
- 计算今年和去年的时间,一个月的都是,用来计算同比
- 计算一个数的二进制形式有多少个1
- 从键盘输入一个日期,格式为yyyy-M-d 要求计算该日期与1949年10月1日距离多少天
- 【转】那我们是如何计算出客户地址多少米范围内有哪些门店呢
- 计算区域中有t 个点的 区域有多少个+计算几何 + 叉乘+sort+ 二分 + map poj 2398 Toy Storage
- Js获取当前日期及计算当前日期是今年的第多少天
- 计算N阶乘中结尾有多少零
- 关于有多少个1的计算