Shell判断日期是不是是月末

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell判断日期是不是是月末相关的知识,希望对你有一定的参考价值。

参考技术A 假设25号之后是月末:
ym_day=25
day1=`date "+%Y-%m-%d"` #获得当前日期
ta_day=`awk -F '-' 'print $3'` #截取日期
if [ $ta_day1 -gt $ym_day]
then
echo "今天是月末"
else
echo '今天不是月末'
fi

shell 判断日期间隔及润年

    #!/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

 

以上是关于Shell判断日期是不是是月末的主要内容,如果未能解决你的问题,请参考以下文章

python 获取当前月份月初日期和月末日期

shell 如何判读当前日期是不是是,当月的第一天

Java中获得查询日期的上月末的日期

月末日期范围,其中最近一天 = 系统日期

python 交易日期月末

如何使用 unnest 生成日期数组来提供月末索引?