date命令

用于显示当前的系统时间或设置系统时间。
date [选项] +[日期格式]
 

date命令的参数选项及说明

OPTION参数选项
-d 时间字符串 显示指定字符串所描述的时间,而非当前时间
-f 时间文件 从日期文件中按行读入时间描述
-r 文件 显示指定文件的最后修改时间
-s 日期时间 设置系统时间
-u 显示或设置UTC时间
FORMAT日期格式
%% 输出字符%
%a 星期名缩写(Tue代表星期二)
%A 星期名全称(Tuesday代表星期二) %b 月名缩写(Aug代表八月)
%B 月名全称(August代表八月)
%c 日期和时间(Tue 18 Aug 201502:28:22 PM CST)
%C 世纪
%d 每月的第几天
%D 等于%m/9%d/%y(08/18/15)
%e 每月的第几天
%F 完整日期格式,等价于%Y-%m-%d(2015-08-18)
%g 年份的最后两位数字(15)
%G 年份(2015)
%h 月名缩写,等于%b
%H 24小时制(00-23)
%I 12小时制(00-12)
%j 一年的第几天(001-366)
%k 24小时制(0-23),格式和%H不同
%l 12小时制(1-12)
%m 月份(01-12)
%M 分(00-59)
%n 换行
%N 纳秒(000000000-999999999)
%p “上午”或“下午”,未知时输出为空(AM/PM)
%P 与%p类似,但是输出的是小写字母(am/pm)
%r 当前时区下的12小时制时间(02:30:27PM)
%R 24小时制的时和分,等价于%H:%M(14:30)
%s 自UTC时间1970-01-0100:00:00以来所经过的秒数(1439879439)
%S 秒(00-60)
%t 输出刺表符Tab
%T 时间,等于%H:%M:%S(14:30:50)
%u 星期,1代表星期一
%U 一年中的第几周,以周日为每星期的第一天(00-53)
%V ISO-8601格式规范下一年中的第几周,以周一为每星期的第一天(01-53) %w 一星期中的第几日(0-6),0代表周一
%W 一年中的第几周,以周一为每星期的第一天(00-53)
%x 日期(08/18/2015)
%X 时间(02:31:29PM)
%y 年份的最后两位(00..99)
%Y 年份2015
%z 时区+0800
%:z 时区+08:00
%::z 时区+08:00:00
%:::z 时区+08
%Z 字母格式时区(CST)
 
 

常用时间格式测试

[root@cs6-mini ~]# date +%y
19
[root@cs6-mini ~]# date +%Y
2019
[root@cs6-mini ~]# date +%m
05
[root@cs6-mini ~]# date +%d
15
[root@cs6-mini ~]# date +%H
15
[root@cs6-mini ~]# date +%M
14
[root@cs6-mini ~]# date +%S
54
[root@cs6-mini ~]# date +%F
2019-05-15
[root@cs6-mini ~]# date +%T
15:15:08

通过参数-d显示指定字符串所描述的时间示例

[root@cs6-mini ~]# date +%F -d "-1day"
2019-05-14
[root@cs6-mini ~]# date +%F -d "yesterday"
2019-05-14
[root@cs6-mini ~]# date +%F -d "-2day"
2019-05-13
[root@cs6-mini ~]# date +%F -d "+1day"
2019-05-16
[root@cs6-mini ~]# date +%F -d "tomorrow"
2019-05-16
[root@cs6-mini ~]# date +%F -d "+2day"
2019-05-17
[root@cs6-mini ~]# date +%F -d "1month"
2019-06-15
[root@cs6-mini ~]# date +%F -d "1year"
2020-05-15
这里的+号表示未来,-号表示过去,day表示日,year表示年,month表示月。
[root@cs6-mini ~]# date +%F -d "24hour"
2019-05-16
[root@cs6-mini ~]# date +%F -d "12324min"
2019-05-24
[root@cs6-mini ~]# date +%F -d "-123min"
2019-05-15
这里的hour表示小时,min表示分。

时间格式转换例子

[root@cs6-mini ~]# date -d "Thu Jul 6  21:41:16 CST 2019" "+%Y-%m-%d %H:%M:%S"
2019-07-06 21:41:16
[root@cs6-mini ~]# vi time_test.log
[root@cs6-mini ~]# cat time_test.log
Sat May 19 13:40:02 CST 2015 is 13213213
Sat May 19 19:37:43 CST 2015 is 1012122
Sat May 19 12:40:03 CST 2015 is 13213213
sat May 19 19:37:42 CST 2015 is 1012122
Sat May 19 13:40:03 CST 2015 is 13213213
Sat May 19 19:37:03 CST 2015 is 1012122
[root@cs6-mini ~]# awk -F "is" '{print "echo $(date -d \""$1"\" \"+%F %T\")",$2}' time_test.log
echo $(date -d "Sat May 19 13:40:02 CST 2015 " "+%F %T") 13213213
echo $(date -d "Sat May 19 19:37:43 CST 2015 " "+%F %T") 1012122
echo $(date -d "Sat May 19 12:40:03 CST 2015 " "+%F %T") 13213213
echo $(date -d "sat May 19 19:37:42 CST 2015 " "+%F %T") 1012122
echo $(date -d "Sat May 19 13:40:03 CST 2015 " "+%F %T") 13213213
echo $(date -d "Sat May 19 19:37:03 CST 2015 " "+%F %T") 1012122
[root@cs6-mini ~]# awk -F "is" '{print "echo $(date -d \""$1"\" \"+%F %T\")",$2}' time_test.log |bash
2015-05-19 13:40:02 13213213
2015-05-19 19:37:43 1012122
2015-05-19 12:40:03 13213213
2015-05-19 19:37:42 1012122
2015-05-19 13:40:03 13213213
2015-05-19 19:37:03 1012122

通过参数-s设定时间

[root@cs6-mini ~]# date -s 20170505
Fri May 5 00:00:00 CST 2017
[root@cs6-mini ~]# date
Fri May 5 00:00:01 CST 2017
[root@cs6-mini ~]# date -s "00:12:23"
Fri May 5 00:12:23 CST 2017
[root@cs6-mini ~]# date -s "00:12:23 20190304"
Mon Mar 4 00:12:23 CST 2019
[root@cs6-mini ~]# date -s "00:12:23 2019-03-04"
Mon Mar 4 00:12:23 CST 2019
[root@cs6-mini ~]# date -s "00:12:23 2019/03/04"
Mon Mar 4 00:12:23 CST 2019
显示时间后换行,再显示日期。
[root@cs6-mini ~]# date +%T%n%D
00:13:08
03/04/19
[root@cs6-mini ~]# date +%D
03/04/19

5.6 date:显示与设置系统时间的更多相关文章

  1. date 显示或设置系统时间和日期

    显示或设置系统时间和日期 date [options] [+format] date [options] [new date] date用来显示系统的时间和日期,超级用户可以使用date来更改系统时钟 ...

  2. date:显示与设置系统时间

    功能: date命令用于显示当前的系统时间或设置系统时间 语法格式: date [option] [+format] date [选项] [+日期格式] 参数选项: option 参数选项: -d  ...

  3. 我使用过的Linux命令之date - 显示、修改系统日期时间

    原文地址:http://www.cnblogs.com/diyunpeng/archive/2011/11/20/2256538.html 用途说明 ate命令可以用来显示和修改系统日期时间,注意不是 ...

  4. 我使用过的Linux命令之date - 显示、修改系统日期时间(转)

    用途说明 ate命令可以用来显示和修改系统日期时间,注意不是time命令. 常用参数 格式:date 显示当前日期时间. 格式:date mmddHHMM 格式:date mmddHHMMYYYY 格 ...

  5. date - 打印或设置系统日期和时间

    总览 date [选项]... [+格式] date [选项] [MMDDhhmm[[CC]YY][.ss]] 描述 根据指定格式显示当前时间或设置系统时间. -d, --date=STRING 显示 ...

  6. linux date 设置系统时间

    设置 系统时间 注意时间格式 date  -s "date" [root@localhost c]# date -s "2019-05-29 10:58:00" ...

  7. hwclock 显示或设置CMOS时间

    显示或设置CMOS时间 hwclock [options] 选项 -r               默认选项,读取并打印CMOS时间 -s               将CMOS时间设置为系统时间 - ...

  8. linux设置系统时间

    设置系统时间 -         date命令:显示系统的时间,可以在直接输入"date"命令来查看系统的时间 -           date+%y/%m/%d -        ...

  9. QT在linux环境下读取和设置系统时间(通过system来直接调用Linux命令,注意权限问题)

    QT在Linux环境下读取和设置系统时间 本文博客链接:http://blog.csdn.NET/jdh99,作者:jdh,转载请注明. 环境: 主机:Fedora12 开发软件:QT 读取系统时间 ...

随机推荐

  1. 面试题:让你捉摸不透的 Go reslice

    面试题: package main func a() []int { a1 := []int{3} a2 := a1[1:] return a2 } func main() { a() } 看到这个题 ...

  2. kubernetes资源优化

    kubernetes资源优化方向 系统参数限制 设置系统内核参数: vm.overcommit_memory = 0 vm.swappiness = 0 sysctl -p #生效 内核参数overc ...

  3. fastjson反序列化漏洞实际案例利用

    fastjson反序列化rce实际案例利用全过程: 存在问题网站:http://***.com/ 在网站上寻找一些安全漏洞的时候,发现一条json数据包 数据包如下: POST /*** HTTP/1 ...

  4. Salesforce 集成篇零基础学习(一)Connected App

    本篇参考: https://zhuanlan.zhihu.com/p/89020647 https://trailhead.salesforce.com/content/learn/modules/c ...

  5. php 操作 redis 常用命令

    原文地址: https://www.cnblogs.com/zhanghanwen16/p/9510481.html 1.redis连接与认证 //连接参数:ip.端口.连接超时时间,连接成功返回tr ...

  6. hdu4022 map+multiset

    题意:       给你一些敌人的坐标,每次让你删除某一行或者某一列,问你每一次操作能删除多少人..... 思路:       map和multiset的完美结合,吧set定义到map里,达到一个一对 ...

  7. 技术面试问题汇总第004篇:猎豹移动反病毒工程师part4

    这次所讨论的三个问题,比如DLL以及HOOK,很容易被病毒木马所利用,因此必须要比较全面地进行了解.而异常处理机制,则往往与漏洞相关联.它们自身的概念并不难理解,只是由之引申而来的问题,在计算机安全领 ...

  8. hdu 1044 BFS(压缩图)+DFS

    题意:              给你起点,终点,图上有墙有路还有宝物,问你在规定时间内能否能到终点,如果能问最多能捡到多少宝物. 思路:           看完这个题目果断 BFS+三维的mark ...

  9. Python脚本写端口扫描器(socket,python-nmap)

    目录 Socket模块编写 扫描给定主机是否开放了指定的端口 python-nmap模块编写 扫描给定ip或给定网段内指定端口是否开放 一个用python写的简单的端口扫描器,python环境为 3. ...

  10. 神经网络与机器学习 笔记—反向传播算法(BP)

    先看下面信号流图,L=2和M0=M1=M2=M3=3的情况,上面是前向通过,下面部分是反向通过. 1.初始化.假设没有先验知识可用,可以以一个一致分布来随机的挑选突触权值和阈值,这个分布选择为均值等于 ...