ITPub博客

首页 > Linux操作系统 > Linux操作系统 > date2julian and julian2date

date2julian and julian2date

原创 Linux操作系统 作者:cqubityj 时间:2009-04-29 18:10:41 0 删除 编辑
    # Julian Day Number from calendar date
    date2julian() #  day month year
    {
      day=$1;  month=$2;  year=$3
      tmpmonth=$((12 * year + month - 3))
      tmpyear=$((tmpmonth / 12))
      print $(( (734 * tmpmonth + 15) / 24 -  2 * tmpyear + \
        tmpyear/4 - tmpyear/100 + tmpyear/400 + day + 1721119 ))
    }
   
    # Calendar date from Julian Day Number
    julian2date() # julianday
    {
      tmpday=$(($1 - 1721119))            
      centuries=$(( (4 * tmpday - 1) / 146097))   
      tmpday=$((tmpday + centuries - centuries/4))      
      year=$(( (4 * tmpday - 1) / 1461))         
      tmpday=$((tmpday - (1461 * year) / 4))            
      month=$(( (10 * tmpday - 5) / 306))         
      day=$((tmpday - (306 * month + 5) / 10))   
      month=$((month + 2))                              
      year=$((year + month/12))                        
      month=$((month % 12 + 1))
      print $day $month $year
    }
   
    # Day of week, Monday=1...Sunday=7
    dow() # day month year
    {
      print $(( $(date2julian $1 $2 $3) % 7 + 1))
    }

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/228190/viewspace-592292/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2007-12-19

  • 博文量
    133
  • 访问量
    426779