Linux上shell脚本date的用法
在shell脚本里date命令的用法:
%% 一个文字的 %
%a 当前locale 的星期名缩写(例如: 日,代表星期日)
%A 当前locale 的星期名全称 (如:星期日)
%b 当前locale 的月名缩写 (如:一,代表一月)
%B 当前locale 的月名全称 (如:一月)
%c 当前locale 的日期和时间 (如:2005年3月3日 星期四 ::)
%C 世纪;比如 %Y,通常为省略当前年份的后两位数字(例如:)
%d 按月计的日期(例如:)
%D 按月计的日期;等于%m/%d/%y
%e 按月计的日期,添加空格,等于%_d
%F 完整日期格式,等价于 %Y-%m-%d
%g ISO- 格式年份的最后两位 (参见%G)
%G ISO- 格式年份 (参见%V),一般只和 %V 结合使用
%h 等于%b
%H 小时(-)
%I 小时(-)
%j 按年计的日期(-)
%k hour, space padded ( ..); same as %_H
%l hour, space padded ( ..); same as %_I
%m month (..)
%M minute (..)
%n 换行
%N 纳秒(-)
%p 当前locale 下的"上午"或者"下午",未知时输出为空
%P 与%p 类似,但是输出小写字母
%r 当前locale 下的 小时时钟时间 (如::: 下午)
%R 小时时间的时和分,等价于 %H:%M
%s 自UTC 时间 -- :: 以来所经过的秒数
%S 秒(-)
%t 输出制表符 Tab
%T 时间,等于%H:%M:%S
%u 星期, 代表星期一
%U 一年中的第几周,以周日为每星期第一天(-)
%V ISO- 格式规范下的一年中第几周,以周一为每星期第一天(-)
%w 一星期中的第几日(-), 代表周一
%W 一年中的第几周,以周一为每星期第一天(-)
%x 当前locale 下的日期描述 (如://)
%X 当前locale 下的时间描述 (如:::)
%y 年份最后两位数位 (-)
%Y 年份
%z +hhmm 数字时区(例如,-)
%:z +hh:mm 数字时区(例如,-:)
%::z +hh:mm:ss 数字时区(例如,-::)
%:::z 数字时区带有必要的精度 (例如,-,+:)
%Z 按字母表排序的时区缩写 (例如,EDT)
date命令可以打印和设置系统日期和时间,用法示例如下
date命令常用选项-d
[keysystem@localhost ~]$ date -d 'now' #显示当前时间
Fri Feb :: CST
[keysystem@localhost ~]$
[keysystem@localhost ~]$ date -d '2 days ago' #显示2天前的时间
Wed Jan :: CST
[keysystem@localhost ~]$ date -d '3 month 1 day' #显示3月零1天以后的时间
Thu May :: CST
[keysystem@localhost ~]$ date -d '25 Dec' +%j #显示12月25日在当年的哪一天 [keysystem@localhost ~]$ date -d '30 second ago' #显示30秒前的时间
Fri Feb :: CST 2018
##在当前时间的基础上往前或往后推
[keysystem@localhost ~]$ date -d "+3 day"
Mon Feb :: CST
[keysystem@localhost ~]$ date -d "-3 day"
Tue Jan :: CST
[keysystem@localhost ~]$ date -d "-3 month"
Thu Nov :: CST
[keysystem@localhost ~]$ date -d "+3 month"
Wed May :: CST
[keysystem@localhost ~]$ date -d "+3 year"
Tue Feb :: CST
[keysystem@localhost ~]$ date -d "-3 year"
Mon Feb :: CST
[keysystem@localhost ~]$ date -d "-3 hour"
Fri Feb :: CST
[keysystem@localhost ~]$ date -d "+3 hour"
Fri Feb :: CST
[keysystem@localhost ~]$ date -d "+3 minute"
Fri Feb :: CST
[keysystem@localhost ~]$ date -d "-3 minute"
Fri Feb :: CST
[keysystem@localhost ~]$ date -d "-3 second"
Fri Feb :: CST
[keysystem@localhost ~]$ date -d "+3 second"
Fri Feb :: CST
#显示本月的第一天
[keysystem@localhost ~]$ date -d `date +%y%m01`
Thu Feb :: CST
[keysystem@localhost ~]$ date +%y%m01 [keysystem@localhost ~]$ date +%Y%m01
#上个月最后一天
[keysystem@localhost ~]$ date -d `date +%y%m01`"-1 day"
Wed Jan :: CST
#4个月前的最后一天
[keysystem@localhost ~]$ date -d `date -d "-3 month" +%y%m01`"-1 day"
Tue Oct :: CST
#11个月后的第一天
[keysystem@localhost ~]$ date -d `date -d "+12 month" +%y%m01`"-1 day"
Thu Jan :: CST
#11个月后的最后一天
[keysystem@localhost ~]$ date -d `date -d "+12 month" +%y%m01`"-1 day" +%Y%m%d
显示当前的日期和时间
[keysystem@localhost ~]$ date +%Y%m%d [keysystem@localhost ~]$ date +%Y%m%d%H%M%S
设置日期和时间(date后面的数字代表月日时分年,还可以加秒,需要后面跟英文状态下的句号字符".")
[keysystem@localhost ~]$ date +%m%d%H%M%y [keysystem@localhost ~]$ date
date: cannot set date: Operation not permitted
Fri Feb :: CST
[keysystem@localhost ~]$ date +%m%d%H%M%y.%S
0202102518.11
[keysystem@localhost ~]$ date 0202102518.11
date: cannot set date: Operation not permitted
Fri Feb :: CST
[keysystem@localhost ~]$ date `date -d "3 days ago" +%m%d%H%M%Y.%S`
date: cannot set date: Operation not permitted
Tue Jan :: CST
[keysystem@localhost ~]$ date `date -d "$((3600*24)) seconds ago" +%m%d%H%M%Y.%S`
date: cannot set date: Operation not permitted
Thu Feb :: CST
[keysystem@localhost ~]$
Linux上shell脚本date的用法的更多相关文章
- Linux上shell脚本,字符串转ASCII码
在shell脚本里,将字符串转ASCII码的方法: [keysystem@localhost ~]$ printf "%d" "'A" [keysystem@l ...
- Linux常用Shell脚本珍藏【转载】
我们在运维中,尤其是linux运维,都知道脚本的重要性,脚本会让我们的 运维事半功倍,所以学会写脚本是我们每个linux运维必须学会的一门功课,这里收藏linux运维常用的脚本.如何学好脚本,最关键的 ...
- 详解Linux交互式shell脚本中创建对话框实例教程_linux服务器
本教程我们通过实现来讲讲Linux交互式shell脚本中创建各种各样对话框,对话框在Linux中可以友好的提示操作者,感兴趣的朋友可以参考学习一下. 当你在终端环境下安装新的软件时,你可以经常看到信息 ...
- 从windows到linux的shell脚本编码和格式问题
从windows到linux的shell脚本编码和格式问题 从windows到Linux的shell脚本编码和格式问题 1.异常问题 :set ff=unix 启动脚本在启动时报错比如执行sh s ...
- Linux运行shell脚本提示No such file or directory错误的解决办法
Linux执行.sh文件,提示No such file or directory的问题: 原因:在windows中写好shell脚本测试正常,但是上传到 Linux 上以脚本方式运行命令时提示No s ...
- Linux简单Shell脚本监控MySQL、Apache Web和磁盘空间
Linux简单Shell脚本监控MySQL.Apache Web和磁盘空间 1. 目的或任务 当MySQL数据库.Apache Web服务器停止运行时,重新启动运行,并发送邮件通知: 当服务器磁盘的空 ...
- Linux:从windows到linux的shell脚本编码和格式
从windows到linux的shell脚本编码和格式问题 异常问题 :set ff=unix 启动脚本在启动时报错比如执行sh start.sh,时会报Command not found等等的错误, ...
- 使用C#给Linux写Shell脚本(下篇)
在上篇的<使用C#给Linux写Shell脚本>结尾中,我们留下了一个关于C#如何调用BashShell的问题.在文章发布之后,我留意到有读者留言推荐使用“Pash”(一款类PowerSh ...
- Linux/Unix shell 脚本中调用SQL,RMAN脚本
Linux/Unix shell脚本中调用或执行SQL,RMAN 等为自动化作业以及多次反复执行提供了极大的便利,因此通过Linux/Unix shell来完成Oracle的相关工作,也是DBA必不可 ...
随机推荐
- 总结:C# 委托的全面理解
在说事件之前得先了解委托. 委托,外表看来和C/C++中函数指针没什么区别,但是本质上你才发现他其实就是个类!也就是说理解委托得从 这个两个方面去理解(单从一个方面去理解感觉就怪怪的呵呵!) 理解委托 ...
- USART_GetITStatus和USART_GetFlagStatus的区别
USART_GetITStatus()和USART_GetFlagStatus()的区别 都是访问串口的SR状态寄存器,唯一不同是,USART_GetITStatus()会判断中断是否开启,如果没开启 ...
- SQLAlchemy 关联表删除实验
本实验所用代码来源于官网文档 from sqlalchemy import Table, Column, Integer, String, ForeignKey from sqlalchemy.orm ...
- linux AB web 性能测试工具
ab(选项)(参数) 选项 -A:指定连接服务器的基本的认证凭据: -c:指定一次向服务器发出请求数: -C:添加cookie: -g:将测试结果输出为“gnuolot”文件: -h:显示帮助信息: ...
- Istio全景监控与拓扑
根据Istio官方报告,Observe(可观察性)为其重要特性.Istio提供非侵入式的自动监控,记录应用内所有的服务. 我们知道在Istio的架构中,Mixer是管理和收集遥测信息的组件.每一次当请 ...
- cf 1029D
题面 题目描述 给定含n个整数的数组a. 规定数x,y的合并为xy.如:数12与数3456的合并为数123456. 有数组中的位置对(i,j)(i≠j),计算使ai,aj的合并能被k整除的位置对数量. ...
- Windos 下python2.7安装 pymssql 解决方案
最近在学python,到安装pymssql这一块遇到了不少问题. 第一:如何安装python 模块,也是最主要的问题. 可以这么理解:在安装python其它模块之前,可以先安装一个负责安装模块的模块. ...
- “数学口袋精灵”App的第二个Sprint计划----开发日记
一.现状 在第一个sprint计划中,我们已经初步完成了“数学口袋精灵”App的基本框架,现在我们要继续完善app,使其功能更加强大,界面更加有趣. 二.任务认领 完成界面后的后续任务: 冯美欣:欢迎 ...
- C# 7中函数多值返回_转自InfoQ
本文要点 应遵循<.NET设计规范:.NET约定惯用法与模式>一书.和十年前第一版出版时一样,书中给出的原则在当前依然有指导意义. API设计是最重要的.设计不好的API会在极大地增加软件 ...
- VS2015安装与单元测试
很久之前就听说微软有一款强大的编程软件——Visual Stdio系列,也许是满足于VC和CB的小巧一直都没有去尝试,借这次软件工程的机会终于可以一睹其真容,第一感觉是高大上,一改VC和CB的简洁,看 ...