您的位置:首页 > 运维架构 > Linux

每天回顾linux命令(date)

2017-11-27 16:13 441 查看

date命令

date命令是显示或设置系统时间和日期

很多shell脚本里面需要打印不同格式的时间或日期,以及要根据时间和日期执行操作。日期可以以多种格式去打印,也可以使用命令设置固定的格式。在unix类操作系统中,日期被存储为一个整数,其大小为自世界标准时间(UTC)1970年1月1日0时0分0秒起逝去的秒数。

语法

date (选项)(参数)


选项

不加参数:按照系统固定的格式显示当前的系统时间。

root@aad1c1a83775:/# date
Mon Nov 27 15:11:31 CST 2017
root@aad1c1a83775:/#


-d “字符串”或–date=string:显示字符串所指的日期与时间。而非当前时间

root@aad1c1a83775:/# date -d "2017-11-27"
Mon Nov 27 00:00:00 CST 2017
root@aad1c1a83775:/#


-s “字符串”或 –set=string:根据字符串来设置日期与时间,需要获取权限才可以。

root@aad1c1a83775:/# date -s "2017-11-28"
date: cannot set date: Operation not permitted
Tue Nov 28 00:00:00 CST 2017
root@aad1c1a83775:/#


-u:显示GMT

root@aad1c1a83775:/# date
Mon Nov 27 15:25:17 CST 2017
root@aad1c1a83775:/# date -u
Mon Nov 27 07:27:56 UTC 2017
root@aad1c1a83775:/#


参数

“+时间日期格式”:指定显示时使用的日期时间格式

日期时间字符串列表

%a:星期的简称

root@aad1c1a83775:/# date "+%Y-%m-%d -%a"
2017-11-27 -Mon
root@aad1c1a83775:/#


%A:星期的全称

root@aad1c1a83775:/# date "+%Y-%m-%d -%A"
2017-11-27 -Monday
root@aad1c1a83775:/#


-b:月的简称

root@aad1c1a83775:/# date "+%Y-%m-%d -%b"
2017-11-27 -Nov
root@aad1c1a83775:/#


-B:月的全称

root@aad1c1a83775:/# date "+%Y-%m-%d -%B"
2017-11-27 -November
root@aad1c1a83775:/#


-c:显示日期和时间

root@aad1c1a83775:/# date "+%c"
Mon Nov 27 15:40:37 2017
root@aad1c1a83775:/#


%C或%y:年的高两位

root@aad1c1a83775:/# date "+%C"
20
root@aad1c1a83775:/#


%d:日

root@aad1c1a83775:/# date "+%d"
27
root@aad1c1a83775:/#


%D:日期 same as %m/%d/%y

root@aad1c1a83775:/# date "+%D"
11/27/17
root@aad1c1a83775:/#


%e:和%d一致

root@aad1c1a83775:/# date "+%e"
27
root@aad1c1a83775:/#


%F:日期,和%Y-%m-%d一致

root@aad1c1a83775:/# date "+%F"
2017-11-27
root@aad1c1a83775:/#


%h:和%b一样

root@aad1c1a83775:/# date "+%h"
Nov
root@aad1c1a83775:/#


%H:小时,24小时制(00~23)

root@aad1c1a83775:/# date "+%H"
15
root@aad1c1a83775:/#
root@aad1c1a83775:/# date
Mon Nov 27 15:49:07 CST 2017
root@aad1c1a83775:/#


%I:小时,12小时制(01~12)

root@aad1c1a83775:/# date "+%I"
03
root@aad1c1a83775:/#


%j:年的第几天(001~366)

root@aad1c1a83775:/# date "+%j"
331
root@aad1c1a83775:/#


%k:小时,24小时制(0~23)

root@aad1c1a83775:/# date "+%k"
15
root@aad1c1a83775:/#


%l:小时,12小时制(1~12)

root@aad1c1a83775:/# date "+%l"
3
root@aad1c1a83775:/#


%m:月(01~12)

root@aad1c1a83775:/# date "+%m"
11
root@aad1c1a83775:/#


%M:分钟数,(00~59)

root@aad1c1a83775:/# date
Mon Nov 27 15:55:01 CST 2017
root@aad1c1a83775:/# date "+%M"
55
root@aad1c1a83775:/#


%n:新加一行

root@aad1c1a83775:/# date "+%M"
55
root@aad1c1a83775:/# date "+%n%M"

55
root@aad1c1a83775:/#


%N:当前秒的纳秒数

root@aad1c1a83775:/# date "+%n%N"

609603287
root@aad1c1a83775:/# date "+%n%N"

502494837
root@aad1c1a83775:/#


%p:显示是AM还是PM

root@aad1c1a83775:/# date "+%p"
PM
root@aad1c1a83775:/#


%P:以小写的方式显示是am还是pm

root@aad1c1a83775:/# date "+%P"
pm
root@aad1c1a83775:/#


%r:小时以12进制显示时间

root@aad1c1a83775:/# date "+%r"
04:00:21 PM
root@aad1c1a83775:/#


%R:小时以24显示当前小时和分钟,和%H:%M一致

root@aad1c1a83775:/# date "+%R"
16:02
root@aad1c1a83775:/#


%s:从1970-01-01 00:00:00 UTC到当前的秒数

root@aad1c1a83775:/# date "+%s"
1511769785
root@aad1c1a83775:/#


%S:秒,(00~59) 命令注释是(00~60)有误

root@aad1c1a83775:/# date "+%S"
59
root@aad1c1a83775:/# date "+%S"
00
root@aad1c1a83775:/# date "+%S"


%t:增加一个tab键

root@aad1c1a83775:/# date "+%S"
54
root@aad1c1a83775:/# date "+%t%S"
57
root@aad1c1a83775:/#


%T:时间,和%H:%M:%S一致

root@aad1c1a83775:/# date "+%T"
16:05:43
root@aad1c1a83775:/#


%u:以数字的形式显示星期(1~7)

root@aad1c1a83775:/# date "+%u"
1
root@aad1c1a83775:/# date "+%a"
Mon
root@aad1c1a83775:/#


%U:日期对应的星期是当年的第几个星期(00~53)

root@aad1c1a83775:/# date "+%U"
48
root@aad1c1a83775:/#


%w:以数字的形式显示星期(0~6)

root@aad1c1a83775:/# date "+%w"
1
root@aad1c1a83775:/#


%x:当前的日期

root@aad1c1a83775:/# date "+%x"
11/27/17
root@aad1c1a83775:/#


%X:当前的时间

root@aad1c1a83775:/# date "+%X"
16:11:34
root@aad1c1a83775:/#
``
**%Z:显示当前的时区**


root@aad1c1a83775:/# date “+%Z”

CST

root@aad1c1a83775:/#

“`

`
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: