【轉】Shell計算任意兩個日期之間的天數

 str=$1
    yy1=`echo $str|cut -c 1-4`
    mm1=`echo $str|cut -c 5-6`
    dd1=`echo $str|cut -c 7-8`
    str=$2
    yy2=`echo $str|cut -c 1-4`
    mm2=`echo $str|cut -c 5-6`
    dd2=`echo $str|cut -c 7-8`
    count_day=`expr $dd2 - $dd1`
    while [ $yy2 -ne $yy1 -o $mm2 -ne $mm1 ]
    do
            mm2=`expr $mm2 - 1`
            [ $mm2 -eq 0 ] && mm2=12 && yy2=`expr $yy2 - 1`
            aaa=`cal $mm2 $yy2`
            bbb=`echo $aaa|awk '{print $NF}'`                        #計算一個月天數
            count_day=`expr $count_day + $bbb`
    done
    echo $count_day

 #countdays.sh 適用於計算兩個日期間間隔天數,如20081231 到20100713之間的天數

寫道
sh countdays.sh 20081231 20100713
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章