shell脚本中获取日期

数字时间转标准时间:

数字时间如:20151009163000

标准时间:2015-10-19 16:30:00

a=`head -1 /home/xxx/xxx/bin/.status |awk -F= ‘{print $2}‘|sed -r ‘s/([0-9]{4})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})/\1-\2-\3 \4:\5:\6/‘`

把标准时间转换成秒(据1970-1-1):

date -d "$a" +%s

shell脚本中获取日期:

获取今天的日期:

[[email protected] ~]# date -d "now" +%Y%m%d
20150819
[[email protected] ~]#

获取昨天的日期:

[[email protected] ~]# date -d "1 day ago" +%Y%m%d
20150818
[[email protected] ~]# date -d "yesterday" +%Y%m%d
20150818
[[email protected] ~]# date -d "-1 days" +%Y%m%d
20150818
[[email protected] ~]#

获取前天的日期:

[[email protected] ~]# date -d "2 day ago" +%Y%m%d
20150817
[[email protected] ~]# date -d "-2 days" +%Y%m%d
20150817
[[email protected] ~]#

获取上前天的日期:

[[email protected] ~]# date -d "3 day ago" +%Y%m%d
20150816
[[email protected] ~]# date -d "-3 days" +%Y%m%d
20150816
[[email protected] ~]#

获取明天的日期:

[[email protected] ~]# date -d "tomorrow" +%Y%m%d
20150820
[[email protected] ~]# date -d "next-day" +%Y%m%d
20150820
[[email protected] ~]# date -d "day" +%Y%m%d
20150820
[[email protected] ~]# date -d "+1 days" +%Y%m%d
20150820
[[email protected] ~]#

获取两天后的日期:

[[email protected] ~]# date -d "2 day" +%Y%m%d
20150821
[[email protected] ~]# date -d "+2 days" +%Y%m%d
20150821
[[email protected] ~]#

获取三天后的日期:

[[email protected] ~]# date -d "3 day" +%Y%m%d
20150822
[[email protected] ~]# date -d "+3 days" +%Y%m%d
20150822
[[email protected] ~]#

获取一月后的日期:

[[email protected] ~]# date -d "next-month" +%Y%m%d
20150919
[[email protected] ~]# date -d "month" +%Y%m%d
20150919
[[email protected] ~]#

获取一月后第二天的日期:

[[email protected] ~]# date -d "month 2 day" +%Y%m%d
20150919
[[email protected] ~]#

获取一月前的日期:

[[email protected] ~]# date -d "last-month" +%Y%m%d
20150719
[[email protected] ~]#

获取一年前的日期:

[[email protected] ~]# date -d "last-year" +%Y%m%d
20140819
[[email protected] ~]# date -d "-1 year" +%Y%m%d
20140819
[[email protected] ~]#

获取一年前的前一天日期:

[[email protected] ~]# date -d "-1 year -1 days" +%Y%m%d
20140818
[[email protected] ~]#

获取一年后的日期:

[[email protected] ~]# date -d "next-year" +%Y%m%d
20160819
[[email protected] ~]# date -d "year" +%Y%m%d
20160819
[[email protected] ~]# date -d "+1 year" +%Y%m%d
20160819
[[email protected] ~]#

获取一年后的后两天的日期:

[[email protected] ~]# date -d "year 2 day" +%Y%m%d
20160821
[[email protected] ~]#

获取一周前的日期:

[[email protected] ~]# date -d "-1 weeks" +%Y%m%d
20150812
[[email protected] ~]#

获取一周前的前一天日期:

[[email protected] ~]# date -d "-1 weeks -1 days" +%Y%m%d
20150811
[[email protected] ~]#

获取一周前的后一天日期:

[[email protected] ~]# date -d "-1 weeks +1 days" +%Y%m%d
20150813
[[email protected] ~]#

获取一周后的日期:

[[email protected] ~]# date -d "weeks" +%Y%m%d
20150826
[[email protected] ~]#

获取一周后第二天的日期:

[[email protected] ~]# date -d "week day" +%Y%m%d
20150827
[[email protected] ~]#

获取一周后第三天的日期:

[[email protected] ~]# date -d "week 2 day" +%Y%m%d
20150828
[[email protected] ~]#
时间: 2024-10-13 04:42:10

shell脚本中获取日期的相关文章

shell脚本中获取当前所在目录地址

shell脚本中获取当前所在目录如下 #!/bin/bash work_path=$(dirname $0) cd ${work_path} work_path=$(pwd) cd ${work_path}/src 原文地址:https://www.cnblogs.com/zhangshiwen/p/9064161.html

[转]Shell脚本中获取SELECT结果值的方法

有时候我们可能会需要在Shell脚本中执行SELECT语句,并将结果赋值给一个变量,对于这样的情形,我们可以用以下的方法来达到目的. 点击(此处)折叠或打开 #!/bin/ksh # # Created : 2015.05.25 # Updated : 2015.05.25 # Author : Jet Chenxi Zhang # Description : Get SELECT result in Shell # Variable Definitions # ORACLE_SID=audte

shell脚本中的逻辑判断,文件目录属性判断,if特殊用法,case语句

笔记内容: 20.5 shell脚本中的逻辑判断 20.6 文件目录属性判断 20.7 if特殊用法 20.8/20.9 case判断 笔记日期:2017-11-22 20.5 shell脚本中的逻辑判断 在所有的编程语言中都会有if语句来进行逻辑判断,所以在shell中也不例外. Shell的if语句的判断条件和其他编程语言一样写在if关键字的那一行,但是需要使用方括号括起来,并且变量和逻辑运算符以及方括号都要用空格隔开,这一点和其他的编程语言不一样,整个if语句块以fi关键字表示结尾,the

20.1 Shell脚本介绍;20.2 Shell脚本结构和执行;20.3 date命令用法;20.4 Shell脚本中的变量

20.1 Shell脚本介绍 1. shell是一种脚本语言 aming_linux blog.lishiming.net 2. 可以使用逻辑判断.循环等语法 3. 可以自定义函数 4. shell是系统命令的集合 5. shell脚本可以实现自动化运维,能大大增加我们的运维效率 20.2 Shell脚本结构和执行 1. 开头(首行)需要加: #!/bin/bash 2. 以#开头的行作为解释说明: 3. 脚本的名字以.sh结尾,用于区分这是一个shell脚本 4. 执行.sh脚本方法有两种:

shell脚本中的dat,计算器,内置变量的用法

什么是shell脚本.首先它是一个脚本,并不能作为正式的编程语言.因为是跑在linux的shell中,所以叫shell脚本.说白了,shell脚本就是一些命令的集合.举个例子,我想实现这样的操作: 1)进入到/tmp/目录: 2)列出当前目录中所有的文件名: 3)把所有当前的文件拷贝到/root/目录下: 4)删除当前目录下所有的文件. 简单的4步在shell窗口中需要你敲4次命令,按4次回车.这样是不是很麻烦?所以不妨把所有的操作都记录到一个文档中,然后去调用文档中的命令,这样一步操作就可以完

shell脚本中常用的命令:wget、curl、ss、lsof、nmap、nc、netstat、telnet

shell脚本中常用的命令:wget.curl.ss.lsof.nmap.nc.netstat.telnet 实验环境说明: (1)远程nginx服务器IP:192.169.5.136,nginx服务使用的端口是80: (2)本地ceshiji的IP: 192.169.5.121 在服务器本地监控服务端口常见命令:netstat.ss.lsof(简称三'S') 举例说明常用命令的选项: (1)[[email protected] ~]# netstat -lnp |grep nginx tcp

对于shell脚本参数获取时的一点小技巧

问题如下: 根据脚本参数的个数$#进行一个循环,在依次输出每个参数$1 $2 $3...... 我有一个循环变量i $i 取到这时的i为1,我想使用这个1再去调用$1,也是就是打印出第一个参数 就是$($i)的意思来取到第几个参数,当然$($i)是不好用的 当时纠结了好久,最后上百度提问,两位高手给出了答案: 1) #!/bin/sh NUMBER=$# echo $NUMBER i=1 while [ $i -le $NUMBER ] do a[$i]=$1 #将数组a[i]赋值为$1,即取得

利用shell脚本自动获取awr报表

观察Oracle数据库性能,oracle自带的awr功能为我们提供了一个近乎完美的解决方案,通过awr特性我们可以随时从数据库提取awr报告.通过报告可以了解一个系统的整个运行情况,生成的报告包括多个部分. 如何获取awr报告? 通过awrrpt.sql脚本执行 通过调用ORALCE的包dbms_workload_repository.awr_report_html/dbms_workload_repository.awr_report_text 获取awr报告通常是采用html形式:打开页面比

shell脚本介绍,shell脚本结构和执行方式,date命令的用法,shell脚本中的变量简介

笔记内容: 20.1 shell脚本介绍 20.2 shell脚本结构和执行 20.3 date命令用法 20.4 shell脚本中的变量 笔记日期:2017-11-21 20.1 shell脚本介绍 Shell Script,Shell脚本与Windows/Dos下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的.但是它比Windows下的批处理更强大,比用其他编程程序编辑的程序效率更高,它使用了Linux/Unix下的命令