加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

shell 判断日期间隔及润年

发布时间:2020-12-15 23:17:08 所属栏目:安全 来源:网络整理
导读:#!/bin/bash test.sh until echo "----------------------------------" echo "请输入您的选择:" echo "(1) 显示当前时间" echo "(2) 判断是否是润年" echo "(3) 时间间隔" echo "(4) 退出" echo "----------------------------------" read input test $inp
    #!/bin/bash test.sh
  
  until
    echo "----------------------------------"
 echo "请输入您的选择:" 
  echo "(1) 显示当前时间"
 echo "(2) 判断是否是润年" 
   echo "(3) 时间间隔"  
echo "(4) 退出"
 echo "----------------------------------" 
 read input
    test $input = 4
    do 
     case $input in
     1)
           t=` date ‘+%G-%m-%d %H:%M:%S‘ `
        echo $t
        ;;
      2)
        echo -n 请输入将要进行判断的年份:
        read year
         let "y1=$year % 4"
       let "y2=$year % 100"
       let "y3=$year % 400"
       if [ ! "$y1" -eq 0 ]
       then
         leap=0
       elif [ ! "$y2" -eq 0 ]
        then
       leap=1
        elif [ "$y3" -eq 0 ]
       then
        leap=1
       else
        leap=0
        fi
         if [ "$leap" -eq 1 ]
       then
        echo "$year 是闰年"
      else
         echo "$year 不是闰年"
             fi
        ;;
   
     3)
           read -p "请输入两个日期,格式(YYYYMMDD YYYYMMDD) :" start end
      ##将输入的日期转为的时间戳格式
      startDate=`date -d "${start}" +%s`
      endDate=`date -d "${end}" +%s`
      ##计算两个时间戳的差值除于每天86400s即为天数差
     stampDiff=`expr $endDate - $startDate`
     dayDiff=`expr $stampDiff / 86400`
     echo $dayDiff
         ;;
   
     4)echo " (1-4) " 
 esac
     done

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读