每天一个Linux命令(32)date命令
date命令是显示或设置系统时间与日期。
(1)用法:
用法: date [选项] [参数]
(2)功能:
功能: 根据指定格式显示当前时间或设置系统时间
很多shell脚本里面需要打印不同格式的时间或日期,以及要根据时间和日期执行操作。延时通常用于脚本执行过程中提供一段等待的时间。日期可以以多种格式去打印,也可以使用命令设置固定的格式。在类UNIX系统中,日期被存储为一个整数,其大小为自世界标准时间(UTC)1970年1月1日0时0分0秒起流逝的秒数。
(3)选项参数:
1) <+时间日期格式>: 指定显示时使用的日期时间格式;
2) -d<字符串>: 显示字符串所指的日期与时间,字符串前后必须加上双引号;
3) -s<字符串>: 根据字符串来设置日期与时间;(不用加引号)
(4)实例:
1)[root@localhost Document]# date -s 20160530 设置日期和时间(只有root权限才能设置,其他只能查看)
[root@localhost Document]# date -s
2016年 05月 30日 星期一 :: PDT
[root@localhost Document]# date -s ::
2016年 05月 30日 星期一 :: PDT
2)[root@localhost Document]# date 查看当前时间
[root@localhost Document]# date
2016年 05月 30日 星期一 :: PDT
3)[root@localhost Document]# date 0819150511 第二种设置日期和时间的方式
[root@localhost Document]# date
2011年 08月 19日 星期五 :: PDT
[root@localhost Document]# date
2016年 05月 30日 星期一 :: PDT
4)[root@localhost Document]# date +%m%d%H%M%S 第二种显示日期的方式
[root@localhost Document]# date +%m%d%H%M%S [root@localhost Document]# date +%y%m%d%H%M%S
5)[root@localhost Document]# date -d "+1 day" +"%y/%m/%d" 显示经过加减法过后的日期
[root@localhost Document]# date -d "1 day ago" +"%Y-%m-%d" //等价于date -d "-1 day ago" +"%Y-%m-%d"
--
[root@localhost Document]# date -d "1 day ago" +"%y-%m-%d"
--
[root@localhost Document]# date -d "1 month ago" +"%y/%m/%d"
//
[root@localhost Document]# date -d "+1 day" +"%y/%m/%d"
//
[root@localhost Document]# date -d "+1 month" +"%y-%m-%d"
--30
6)[root@localhost Document]# date -s "2016-05-30 09:10:10" 同时设置日期和时间
[root@localhost Document]# date -s "2016-05-30 09:10:10"
2016年 05月 30日 星期一 :: PDT
[root@localhost Document]# date -s "20160530 09:10:10"
2016年 05月 30日 星期一 :: PDT
[root@localhost Document]# date -s "09:00:00 20160530"
2016年 05月 30日 星期一 :: PDT
[root@localhost Document]# date -s "09:00:00 2016/05/30"
2016年 05月 30日 星期一 :: PDT
[root@localhost Document]# date -s "09:00:00 2016-05-30"
2016年 05月 30日 星期一 :: PDT
7)格式转换后时间游走:
[root@localhost Document]# date -d "Nov 5, 2018 09:00:00 AM 2 year ago" +"%Y-%m-%d %H:%M.%S"
-- :00.00
[root@localhost Document]# date -d "Oct 30, 2018 09:10:00 AM 2 month ago" +"5Y-%m-%d %H:%M"
5Y-- :
[root@localhost Document]# date -d "Oct 30, 2018 09:10:00 AM 2 month ago" +"%Y-%m-%d %H:%M"
-- :
8)[root@localhost Document]# echo $diff seconds 记录命令花费的时间
[root@localhost Document]# start=$(date +%s)
[root@localhost Document]# ls /home |more -
sunjimeng
[root@localhost Document]# end=$(date +%s)
[root@localhost Document]# diff=$((end-start))
[root@localhost Document]# echo $diff seconds
seconds
(5)日期格式字符串列表
%H 小时,24小时制(00~23)
%I 小时,12小时制(01~12)
%k 小时,24小时制(0~23)
%l 小时,12小时制(1~12)
%M 分钟(00~59)
%p 显示出AM或PM
%r 显示时间,12小时制(hh:mm:ss %p)
%s 从1970年1月1日00:00:00到目前经历的秒数
%S 显示秒(00~59)
%T 显示时间,24小时制(hh:mm:ss)
%X 显示时间的格式(%H:%M:%S)
%Z 显示时区,日期域(CST)
%a 星期的简称(Sun~Sat)
%A 星期的全称(Sunday~Saturday)
%h,%b 月的简称(Jan~Dec)
%B 月的全称(January~December)
%c 日期和时间(Tue Nov 20 14:12:58 2012)
%d 一个月的第几天(01~31)
%x,%D 日期(mm/dd/yy)
%j 一年的第几天(001~366)
%m 月份(01~12)
%w 一个星期的第几天(0代表星期天)
%W 一年的第几个星期(00~53,星期一为第一天)
%y 年的最后两个数字(1999则是99)
月份的英文表示:
【January】 【February】 【March】 【April】 【May】 【June】 【July】 【August】 【September】 【October】 【November】 【December 】
最新文章
- Spring特性--DI
- Linux - History
- SQL中的内连接与外连接
- 35 个免费创新的响应式 HTML5 模板
- c++需要注意的地方和小算法
- python(5)&ndash;random模块及验证码
- (转,感谢原作者!)既然选择了Linux,有何必在乎这些——Linux wine国服LOL英雄联盟,完美运行!!
- Qt 图形特效(Graphics Effect)介绍
- Linux show funny time[ liunx 有趣的东西展示]
- Java web文件上传下载
- BOM—浏览器对象模型(Browser Object Model)
- 复杂JSON对象的查询与合并
- 如何优化Spring Cloud微服务注册中心架构?
- 非常全面的SQL Server巡检脚本来自sqlskills团队的Glenn Berry
- 范围for语句
- jasperReport和Ireport
- UnicodeDecodeError: &#39;ascii&#39; codec can&#39;t decode byte 0x9c in position 1: ordinal not in range(128)
- Vue 表格内容根据后台返回状态位填充文字
- .NET委托解析(异步委托)
- .NET框架源码解读之SSCLI编译过程简介
热门文章
- [1-6] 把时间当做朋友(李笑来)Chapter 6 【更多思考】 摘录
- 两个页面js方法兼容
- windows上IIS实现https,配置ssl证书
- HDU 4883 TIANKENG’s restaurant Bestcoder 2-1(模拟)
- Atitit.&#160;Object-c语言&#160;的新的特性&#160;&#160;attilax总结
- OpenGL/GLSL数据传递小记(2.x)(转)
- HDFS源码分析数据块复制选取复制源节点
- PHP性能:序——谈ab(Apache Bench)压力测试工具
- 刨根问底 HTTP 和 WebSocket 协议(下)
- Android DIY之路 (一) 指定区域多图片合成 放大 缩小 镜像 旋转 等(转)