获取两个日期间隔时间的shell脚本代码

代码如下:

#!/bin/sh
# 获取所在季度的第一天,到昨天的日期间隔
# link:www.jb51.net
# date:2013/2/28

day=`date -d "1 days ago " "+%Y%m%d"`;
year=`expr substr ${day} 1 4`;
month=`expr substr ${day} 5 2`;
s_date=$year"0101"
if [ "$month" == "01" ] || [ "$month" == "02" ] || [ "$month" == "03" ];then
   s_date=$year"0101"
elif [ "$month" == "04" ] || [ "$month" == "05" ] || [ "$month" == "06" ];then
   s_date=$year"0401"
elif [ "$month" == "07" ] || [ "$month" == "08" ] || [ "$month" == "09" ];then
   s_date=$year"0701"
elif [ "$month" == "10" ] || [ "$month" == "11" ] || [ "$month" == "12" ];then
   s_date=$year"1001"
fi
e_date=$day
sys_s_data=`date -d "$s_date" +%s`
sys_e_data=`date -d "$e_date" +%s`
interval=`expr $sys_e_data - $sys_s_data`
daycount=`expr $interval / 3600 / 24 + 1`

echo $daycount

(0)

相关推荐

  • shell通过遍历输出两个日期范围内所有日期的方法

    前言 在平常c/c++开发中经常遇到日期处理的情形,例如求两个给定的日期之间相差的天数或者需要使用map存储两个固定日期范围内的所有日期.前段时间项目中需要用shell脚本批量处理给定的两个日期范围内所有日期产生的日志,当时以为shell处理不方便就用c++来处理了.后面用shell实现了下,发现也挺简单的. 一.思路流程 1.显然不能直接把这两个日期当作整数相减得到差值然后把初始日期不断累加1得到所有的日期,而且要考虑大小月的问题. 2.为了以后开发的方便,需要把这个求两个固定上期范围内的所有

  • Shell脚本遍历一个日期范围实例

    如果跟shell脚本打交道,遍历一个时间范围是很常见的事情,那么今天就跟大家分享一下: 复制代码 代码如下: #!/usr/bin/env bash date1="$1" date2="$2" echo "date1: $date1" echo "date2: $date2" tempdate=`date -d "-0 day $date1" +%F` enddate=`date -d "-0 d

  • perl与shell获取昨天、明天或多天前的日期的代码

    一.首先说下perl如何获取 复制代码 代码如下: #!/usr/bin/perl -wuse POSIX qw(strftime);my $day = strftime("%Y%m%d", localtime(time - 24*3600));#获取昨天的日期 二.在Linux中对man date -d 参数说的比拟笼统,以下示例进一步解释: # -d, --date=STRING display time described by STRING, not `now'[root@Gm

  • 获取两个日期间隔时间的shell脚本代码

    复制代码 代码如下: #!/bin/sh# 获取所在季度的第一天,到昨天的日期间隔# link:www.jb51.net# date:2013/2/28 day=`date -d "1 days ago " "+%Y%m%d"`;year=`expr substr ${day} 1 4`;month=`expr substr ${day} 5 2`;s_date=$year"0101"if [ "$month" == &quo

  • 探讨:如何使用PHP实现计算两个日期间隔的年、月、周、日数

    使用PHP实现计算两个日期间隔的年.月.周.日数: 复制代码 代码如下: <?php    function format($a,$b){        //检查两个日期大小,默认前小后大,如果前大后小则交换位置以保证前小后大        if(strtotime($a)>strtotime($b)) list($a,$b)=array($b,$a);        $start  = strtotime($a);        $stop   = strtotime($b);       

  • MySQL DATEDIFF函数获取两个日期的时间间隔的方法

    描述 返回两个日期之间的时间间隔. 语法 DateDiff(interval, date1, date2 [ ,firstdayofweek[ , firstweekofyear]] ) DateDiff 函数的语法有以下参数: 参数 描述 interval 必选.字符串表达式,表示用于计算 date1 和 date2 之间的时间间隔.有关数值,请参阅"设置"部分. date1, date2 必选.日期表达式.用于计算的两个日期. firstdayofweek 可选.指定星期中第一天的

  • python3获取两个日期之间所有日期,以及比较大小的实例

    如下所示: import datetime #获取两个日期间的所有日期 def getEveryDay(begin_date,end_date): date_list = [] begin_date = datetime.datetime.strptime(begin_date, "%Y-%m-%d") end_date = datetime.datetime.strptime(end_date,"%Y-%m-%d") while begin_date <=

  • Python 3.3实现计算两个日期间隔秒数/天数的方法示例

    本文实例讲述了Python 3.3实现计算两个日期间隔秒数/天数的方法.分享给大家供大家参考,具体如下: >>> import datetime >>> d1 = datetime.datetime.now() >>> d2 = datetime.datetime.now() >>> interval = d2 - d1 >>> interval datetime.timedelta(0, 14, 670206) &

  • java如何获取两个日期的时间差

    本文实例为大家分享了java如何获取两个日期的时间差,供大家参考,具体内容如下 rainBeginTime是从本地数据库获取的时间,格式为"yyyy-MM-ddTHH:mm:ss". 主要逻辑: @SuppressLint("SimpleDateFormat") SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); df.setTimeZone(TimeZone.ge

  • js实现获取两个日期之间所有日期的方法

    本文实例讲述了js实现获取两个日期之间所有日期的方法.分享给大家供大家参考,具体如下: <script> function getDate(datestr){ var temp = datestr.split("-"); var date = new Date(temp[0],temp[1],temp[2]); return date; } var start = "2012-3-25"; var end = "2012-4-3";

  • Android开发获取当前系统日期和时间功能示例

    本文实例讲述了Android开发获取当前系统日期和时间功能.分享给大家供大家参考,具体如下: 安卓 获得系统时间 public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //创建线性布局管理器 LinearLayout layout = new Li

  • 批量转换目录下文件编码的shell脚本代码

    一例批量转换目录下文件编码的shell脚本代码. 需求描述:由于从window转linux过来,很多原来win下的gbk文件需要转换成utf8. 以下脚本仅判断非utf8文件转换成utf8文件,并且默认非utf8文件为gbk,如果文件类型不一致需要修改. 例子: 复制代码 代码如下: #!/bin/bash# File Name: iconv.sh# Author: wanggy# site: www.jb51.net#show_file(){    for file in `ls $1`   

  • python 计算两个日期相差多少个月实例代码

    近期,由于业务需要计算两个日期之前相差多少个月.我在网上找了很久,结果发现万能的python,居然没有一个模块计算两个日期的月数,像Java.C#之类的高级语言,都会有(date1-date2).months的现成方法,觉得不可思议.说句实在的,一直觉得python 的日期处理模块真心不好用. 哦,对了,别跟我说 datetime, calendar, dateutil 这些模块,因为我都试过了,都没用.有个竟然算出来还有错.datetime.timedelta只能计算出日时分秒.对年月却不支持

随机推荐