shell中日期操作
1. date -d操作
date +"%Y%m%d" -d "+n days" #今天的后n天日期
date +"%Y%m%d" -d "-n days" #今天的前n天日期
2. 常用日期格式输出
date +"%F" #输出: --
date +"%D" #输出: //
date +"%Y%m%d %H:%M:%S" #输出: ::
date +"%Y%m%d" #输出:
date +"%Y%m%d %H:%M:%S" -d "+1 hours" #输出: ::
date +"%Y%m%d %H:%M:%S" -d "+1 days" #输出: ::
date +"%Y%m%d %H:%M:%S" -d "+1 months" #输出: ::
date +"%Y%m%d %H:%M:%S" -d "+1 years" #输出: ::
date +"%T" #输出: ::
date +"%F %T" #输出: -- ::
date +"%D %T" #输出: // ::
3. 日期格式转换
# 字符串转时间戳
date -d "2010-10-18 00:00:00" +%s #输出:
# 时间戳转字符串
date -d @ "+%Y-%m-%d" #输出:-- # 获取指定日期的后N天,如果是前N天,则第二部中间是 -
步骤1:得到时间戳 seconds=`date -d "2010-10-18 00:00:00" +%s`
步骤2:加上N天的秒数86400*N seconds_new=`expr $seconds + *N`
步骤3:获得指定日前加上一天的日前 date_new=`date -d @$seconds_new "+%Y-%m-%d"`
4. 获取上月末和最近一年的日期
dt_curr= #当月初
dt=`date -d"${dt_curr} -0 days" "+%Y%m01"`
#去年今月初
dt_lastyear=`date -d"${dt} -1 years" "+%Y%m01"`
#上月末
lastday=`date -d "${dt} -1 day" "+%Y%m%d"`
#去年今月末
lastday_lastyear=`date -d "${dt_lastyear} -1 day" "+%Y%m%d"`
dt: 20190301
dt_lastyear: 20180301
lastday: 20190228
lastday_lastyear: 20180228
shell中日期操作的更多相关文章
- shell中字符串操作【转】
转自:http://blog.chinaunix.net/uid-29091195-id-3974751.html 我们所遇到的编程语言中(汇编除外)都少不了字符串处理函数吧,当然shell编程也不例 ...
- linux shell中读写操作mysql数据库
本文介绍了如何在shell中读写mysql数据库.主要介绍了如何在shell 中连接mysql数据库,如何在shell中创建数据库,创建表,插入csv文件,读取mysql数据库,导出mysql数据库为 ...
- mysql中日期操作
1 获取当前时间 now() select now(); +---------------------+ | now() | +---------------------+ | -- :: | +-- ...
- shell中日期循环的方式
第一种 # 这里的例子以周为循环 !/bin/bash begin_date="20160907" end_date="20170226" while [ &q ...
- 关于sql中日期操作
select * from account where DAYOFWEEK('2019-11-30') =7 limit 10 DAYOFWEEK对应结果: 周日:1 周一:2 周二:3 周三:4 ...
- linux在shell中获取时间
linux在shell中获取时间 获得当天的日期 date +%Y-%m-%d 输出: 2011-07-28 将当前日期赋值给DATE变量DATE=$(date +%Y%m%d) 有时候我们需要使用今 ...
- 【转】linux在shell中获取时间 date巧用
echo `date +%Y-%m-%d" %H:%M:%S"` 获得当天的日期 date +%Y-%m-%d 输出: 2011-07-28 date1=$(date --date ...
- shell中获取时间
获得当天的日期 date +%Y-%m-%d 输出: 2011-07-28 将当前日期赋值给DATE变量DATE=$(date +%Y%m%d) 有时候我们需要使用今天之前或者往后的日期,这时可以使用 ...
- Shell中怎么获取当前日期和时间
转载自:https://zhidao.baidu.com/question/627912810044012524.html 获得当天的日期 [root@master ~]# date +%Y-%m-% ...
随机推荐
- Myeclipse最全快捷键
转自:http://www.iteye.com/topic/1051317 Ctrl+1 快速修复(最经典的快捷键,就不用多说了) Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一 ...
- OpenVPN多处理之-为什么不
OpenVPN没有多处理.人所皆知.我觉得我有点啰嗦了.天天说这个事.为什么没有多处理呢?我们来看下OpenVPN的作者,大牛级别的,早已超越代码的重量级人物,James Yonan(简称JY)是怎么 ...
- quartz.net持久化和集群【转】
在实际使用quartz.net中.持久化能保证实例重启后job不丢失. 集群能均衡服务器压力和解决单点问题. quartz.net在这二块配置都比较方便,来看下. 一:持久化 quartz.net的持 ...
- Redis源代码剖析和凝视(八)--- 对象系统(redisObject)
Redis 对象系统 1. 介绍 redis中基于双端链表.简单动态字符串(sds).字典.跳跃表.整数集合.压缩列表.高速列表等等数据结构实现了一个对象系统,而且实现了5种不同的对象,每种对象都使用 ...
- 跟踪数据库中执行时间超过1.5秒的语句及SP,导入数据库
跟踪 --============================================================================ --新建两个目录 D:\InOut\ ...
- 【centos6.5】CentOS 6.5系统安装配置LAMP(Apache+PHP5+MySQL)服务器环境(linux公社)
准备篇: 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dp ...
- IT路上的应该注意自我规划 学习规划与自我修炼
http://www.nowamagic.net/librarys/veda/detail/607 IT路漫漫,你需要明确自己所处的位置,并作出相应的规划,这条路才能够走得更加顺畅.下面是参考: 初学 ...
- JavaScript 参考教程
JavaScript 是使用“对象化编程”的,或者叫“面向对象编程”的.所谓“对象化编程”,意思是把 JavaScript 能涉及的范围划分成大大小小的对象,对象下面还继续划分对象直至非常详细为止,所 ...
- Linux命令-目录处理命令:rmdir
rmdir /tmp/shijiazhuang/yuhuaqu 删除一个子目录(必须是空目录) rmdir /tmp/shijiazhuang 删除一个不为空的目录会失败
- 调整弹出对话框在ASP.NET应用程序的大小
调整弹出对话框在ASP.NET应用程序的大小 #region 调整弹出对话框在ASP.NET应用程序的大小 protected void PopupWindowControl_Customize ...