SHELL打印两个日期之间的日期
SHELL打印两个日期之间的日期
[root@umout shell]# cat date_to_date.sh
THIS_PATH=$(cd `dirname $0`;)
cd $THIS_PATH
##要求传入的数据格式为yyyyMMdd的两个开始和结束参数,如20170201 20170310
start_input=$1
end_input=$2
##将输入的日期转为的时间戳格式
startDate=`date -d "${start_input}" +%s`
endDate=`date -d "${end_input}" +%s`
##计算两个时间戳的差值除于每天86400s即为天数差
stampDiff=`expr $endDate - $startDate`
dayDiff=`expr $stampDiff / 86400`
##根据天数差循环输出日期
for((i=0;i<$dayDiff;i++))
do
process_date=`date -d "${start_input} $i day" +'%Y-%m-%d'`
echo $process_date
done
输出:
[root@nq shell]# sh date_to_date.sh 20170201 20170310
... ...
2017-02-13
2017-02-14
2017-02-15
2017-02-16
2017-02-17
2017-02-18
2017-02-19
2017-02-20
2017-02-21
2017-02-22
2017-02-23
2017-02-24
2017-02-25
2017-02-26
2017-02-27
2017-02-28
2017-03-01
2017-03-02
2017-03-03
2017-03-04
... ...
将时间转换为时间戳进行计算
[root@nq aabbcc]# cat time.sh
#!/bin/sh
yesterday="2018-02-26"
endDate=`date -d "${yesterday}" +%s`
# 777600 9天前的时间
startDate=777600
# 获取时间中间的差
stampDiff=`expr ${endDate} - ${startDate}`
# 时间的开始点
aa=$(date +%Y%m%d -d "1970-01-01 UTC ${stampDiff} seconds")
bb=$(date +%Y%m%d -d "1970-01-01 UTC ${endDate} seconds")
echo ${aa}
echo ${bb}
输出:
20180217
20180226
SHELL打印两个日期之间的日期的更多相关文章
- Java 获取两个日期之间的日期
1.前期需求,两个日期,我们叫他startDate和endDate,然后获取到两个日期之间的日期 /** * 获取两个日期之间的日期 * @param start 开始日期 * @param end ...
- sql返回两个日期之间的日期_函数实现
-- Description:返回两段日期之间的所有日期 <Description,,>-- ============================================ ...
- PHP 日期之间所有日期
/** * 获取起止日期之间所有日期 * @param $sdate * @param $edate * @return array */ function get_dates($sdate, $ed ...
- vue js实现获取两个日期之间所有日期
https://blog.csdn.net/m0_37852904/article/details/85790793 // 计算续住的总日期列表 getAll(begin, end) { let ar ...
- js实现获取两个日期之间所有日期最简单的方法
Date.prototype.format = function() { var s = ''; var mouth = (this.getMonth() + 1)>=10?(this.getM ...
- PHP 获取两个日期之间的日期数组/月份数组
function getEmptyArr($s_time,$e_time,$type){ $tmp = array(); if($type=='day'){ $s_time = strtotime($ ...
- js实现获取两个日期之间所有日期的方法
function getDate(datestr){ var temp = datestr.split("-"); var date = new Date(temp[0],temp ...
- php 获取开始日期与结束日期之间所有日期
话不多说,源码奉上! function getDateRange($startdate, $enddate) { $stime = strtotime($startdate); $etime = st ...
- php获取开始与结束日期之间所有日期的方法
/** * 获取指定日期段内每一天的日期 * @param Date $startdate 开始日期 * @param Date $enddate 结束日期 * @return Array */ fu ...
随机推荐
- android屏蔽系统锁屏的办法
最近在开发一个第三方锁屏,使用中需要屏蔽系统锁屏,故代码如下: 在第三方锁屏的服务中onCreate()方法中(第三方锁屏服务启动时关闭一次系统锁屏服务即可) KeyguardManager mKey ...
- [转] 隐马尔可夫(HMM)、前/后向算法、Viterbi算法 再次总结
最近工作需要优化LSTM-CRF经典模型中的维特比解码部分,发现对维特比一直是个模糊概念,没有get到本质,搜了一圈,发现一篇好文,mark 博主不让转载,mark个地址吧: https://blog ...
- requests库入门06-post请求
示例相应的接口文档:GitHub邮箱接口文档 先登录GitHub,然后右上角用户下拉框中选择settings,然后选Emails.可以看到当前账户设置的邮箱情况 再看添加邮箱接口的文档描述,可以通过一 ...
- 《The Practice and Theory of Bolshevism》的笔记-第114页
章节名:International Policy 页码:第114页 2017-09-30 15:11:24 Among religions, Bolshevism is to be reckoned ...
- sqlserver 导出数据
背景 一看到这个标题,还有这个内容,感觉当初记录这个知识点真是记录的太简单了.不过通过这个知识点我还真想起了当初的一些事情.写的题外话可能更有意思,希望每篇文章我都能加个当时的题外记录.当时一直搞or ...
- k8s技能树
- 解决ssh登陆很慢的问题
解决步骤: 先备份/etc/ssh/sshd_config,备份命令为 cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak 1.su (以root用户登录 ...
- Zookeeper-Watcher机制与异步调用原理
转载于:http://shift-alt-ctrl.iteye.com/blog/1847320 Watcher机制:目的是为ZK客户端操作提供一种类似于异步获得数据的操作. 1)在创建Zookeep ...
- C#生成不重复的N位随机数
直接上代码: #region 生成N位随机数 /// <summary> /// 生成N位随机数 /// </summary> /// <param name=" ...
- 17)django-模板的继承与导入
情况1:通常写页面都有个模板用来框定头部LOGO页面,左侧导航菜单,只有右部的内容不同.如果不使用模板就大量重复工作. 特别如果头部或者左侧导航需要修改或者添加,所有页面都需要修改.django 通过 ...