Linux

您所在的位置:网站首页 nova7怎么设置显示时间日期和时间 Linux

Linux

2024-07-15 14:48| 来源: 网络整理| 查看: 265

Date命令的作用:以给定的格式显示当前的时间,或者设置系统时间

一、了解date命令的参数

date命令使用方式:

用法:date [选项]... [+格式]

 或:date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

选项

描述

-d, --date=STRING

显示字符串描述的时间

-f, --file=DATEFILE

显示DATEFILE文件中的每行时间

-r, --reference=文件

显示文件被修改的最后时间

-R, --rfc-2822

   --rfc-3339=TIMESPEC

以RFC-2822格式输出日期和时间

以RFC-3339格式输出日期和时间

-s, --set=STRING

通过字符串STRING设置时间

-u, --utc, --universal

时间显示格式是uct格式,默认是cst格式

--help

显示date命令的帮助信息

--version

显示date命令的版本信息

STRING:The --date=STRING is a mostly free format human  readable  date  string

       such  as  "Sun, 29 Feb 2004 16:21:42 -0800" or "2004-02-29 16:21:42" or

       even "next Thursday".  A date string may contain items indicating  cal‐

       endar  date,  time of day, time zone, day of week, relative time, rela‐

       tive date, and numbers.  An empty string indicates the beginning of the

       day.   The date string format is more complex than is easily documented

       here but is fully described in the info documentation.

--date=string是一个大部分自由格式的可读日期字符串

如“Sun,2004年2月29日16:21:42-0800”或“2004-02-29 16:21:42”或

甚至“下星期四”。日期字符串可以包含指示日历日期、日期时间、时区、星期几、相对时间、相对日期和数字的项。空字符串表示一天的开始。日期字符串格式比容易记录的格式复杂

在这里,但在信息文档中有充分描述。

1、-d参数的使用案例【其是将日期按照指定格式显示,并未真正修改系统时间】

[root@localhost c]# date //显示当前时间

2019年 05月 28日 星期二 00:02:12 CST

[root@localhost c]# date -d "next Thursday"        //显示今天之后的,下一个周四

2019年 05月 30日 星期四 00:00:00 CST

[root@localhost c]# date -d "Thu"             //显示今天之后的,下一个周四

2019年 05月 30日 星期四 00:00:00 CST

[root@localhost c]# date -d now //显示当前时间

2019年 05月 28日 星期二 00:02:55 CST

[root@localhost c]# date -d "2004-02-29" //只把日期按照指定格式输出

2004年 02月 29日 星期日 00:00:00 CST

[root@localhost c]# date -d 16:21:42 //只把时间按照指定格式输出

2019年 05月 28日 星期二 16:21:42 CST

[root@localhost c]# date -d "2004-02-29 16:21:42" //把指定日期和时间都按CST格式输出

2004年 02月 29日 星期日 16:21:42 CST

2、-f参数的使用案例

[root@localhost c]# date -f client.c  //查看当前文件内的每行的时间

3、-R参数的使用案例

[root@localhost c]# date -R //可以查看时区

Tue, 28 May 2019 00:08:09 +0800

[root@localhost c]# date --rfc-3339="date" //--rfc-3339有效的参数

2019-05-28

[root@localhost c]# date --rfc-3339="ns" //--rfc-3339有效的参数

2019-05-28 00:11:02.720710101+08:00

[root@localhost c]# date --rfc-3339="seconds" //--rfc-3339有效的参数

2019-05-28 00:11:04+08:00

4、-u 参数的使用案例

[root@localhost c]# date -u //把当前日期和时间都按CST格式输出

2019年 05月 27日 星期一 16:13:32 UTC

5、-s 参数的使用案例

[root@localhost c]# date -s "2019-05-29 10:58:00"    //设置时候,尽量比当前时间快1分钟

2019年 05月 29日 星期三 10:58:00 CST

 

二、date中的各个参数的解释说明

参数

描述

举例

结果显示

Wed, 29 May 2019 11:24:25 +0800

使用date命令查看,标红部分为结果显示位置

%%

一个文字的 %;打印出%

 

 

 

%a

当前locale 的星期名缩写(例如: 日,代表星期日)

# date +%a

2019年 05月 29日 星期三 11:45:42 CST

%A

当前locale 的星期名全称 (如:星期日)

# date +%A

 

星期日

 

2019年 05月 29日

星期三 11:45:42 CST

%b

当前locale 的月名缩写 (如:5月,代表5月)

# date +%b

5月

2019年 05月 29日 星期三 11:45:42 CST

%B

当前locale 的月名全称

# date +%B

五月

2019年五月 29日 星期三 11:45:42 CST(自己编造的字符串)

%c

当前locale 的日期和时间 (如:2005年3月3日 星期四 23:05:25)

# date +%c

 

2019年05月29日 星期三 11时15分15秒

2019年05月29日 星期三 12时14分46秒

%C

世纪;比如 %Y,通常为省略当前年份的后两位数字(例如:20)

# date +%C

20

2019年 05月 29日 星期三 12:14:23 CST

%d

按月计的日期(例如:01)

# date +%d

29

2019年 05月 29日 星期三 12:14:23 CST

%D

按月计的日期;等于%m/%d/%y

# date +%D

05/29/19

 

05/29/2019 12:23:23

%e

按月计的日期,添加空格,等于%_d

# date +%e

29

2019年 05月 29日 星期三 12:14:23 CST

%F

完整日期格式,等价于 %Y-%m-%d

# date +%F

2019-05-29

 

2019-05-29 12:22:3

 %g

ISO-8601 格式年份的最后两位 (参见%G)

# date +%g

19

2019年 05月 29日 星期三 12:14:23 CST

%G

ISO-8601 格式年份 (参见%V),一般只和 %V 结合使用

 

# date +%G

 

2019

2019年 05月 29日 星期三 12:14:23 CST

%h

等于%b

# date +%h

5月

2019年 05月 29日 星期三 12:14:23 CST

%H

小时(00-23)

# date +%H

11

若为下午1点(13:13:26):

显示为 13   【24小时制】

%I

小时(00-12)

# date +%I

11

若为下午1点(13:13:26):

显示为 01 【12小时制】

%j

按年计的日期(001-366)

# date +%j

149

一年365或者366天,今天是第几天

%k

hour, space padded ( 0..23); same as %_H

date +%k

11

若为下午1点(13:13:26):

显示为 13   【24小时制】

%l

hour, space padded ( 1..12); same as %_I

# date +%l

11

若为下午1点(13:13:26):

显示为 01 【12小时制】

%m

month (01..12)

# date +%m

05

2019年 05月 28日 星期二 13:19:08 CST

%M

minute (00..59)

# date +%M

25

2019年 05月 28日 星期二 13:20:18 CST

%N

纳秒(000000000-999999999)

date +%N

277406266

纳秒

%p

当前locale 下的"上午"或者"下午",未知时输出为空

# date +%p

上午

上午

%P

与%p 类似,但是输出小写字母

# date +%P

上午

上午自己测试没看见小写字母

%r

当前locale 下的 12 小时时钟时间 (如:11:11:04 下午)

# date +%r

上午 11时25分39秒

下午 01时23分30秒

%R

24 小时时间的时和分,等价于 %H:%M

#date +%R

11:25

2019年 05月 28日 星期二 13:23:52 CST

%s

自UTC 时间 1970-01-01 00:00:00 以来所经过的秒数

# date +%s

1559100350

自UTC 时间 1970-01-01 00:00:00 以来所经过的秒数

%S

秒(00-60)

# date +%S

55

2019年 05月 28日 星期二 13:24:37 CST

%T

时间,等于%H:%M:%S

# date +%T

11:26:00

2019年 05月 28日 星期二 13:24:37 CST

%u

星期,1 代表星期一

# date +%u

3

2019年5月 29日

星期2 11:45:42 CST(自己编造的字符串)

%U

一年中的第几周,以周日为每星期第一天(00-53)

 

#date +%U

21

一年中的第几周,以周日为每星期第一天(00-53)

 

%V

ISO-8601 格式规范下的一年中第几周,以周一为每星期第一天(01-53)

#date +%V

22

一年中第几周,以周一为每星期第一天(01-53)

%w

一星期中的第几日(0-6),0 代表周日

#date +%w

3

一星期中的第几日(0-6),0 代表周日(跟help结果不同)

%W

一年中的第几周,以周一为每星期第一天(00-53)

#date %W

 

21

一年中的第几周,以周一为每星期第一天(00-53)

%x

当前locale 下的日期描述 (如:12/31/99)

# date +%x

2019年05月29日

2019年05月26日 星期日 11时00分49秒

%X

当前locale 下的时间描述 (如:23:13:48)

# date +%X

11时26分21秒

2019年05月26日 星期日

11时00分49秒

%y

年份最后两位数位 (00-99)

# date +%y

19

2019年05月26日 星期日 11时00分49秒

%Y

年份

# date +%Y

2019

2019年05月26日 星期日 11时00分49秒

%z +hhmm

数字时区(例如,-0400)

# date +%z

+0800

Sun, 26 May 2019 11:02:07 +0800

%:z +hh:mm

数字时区(例如,-04:00)

# date +%:z

+08:00

Sun, 26 May 2019 11:02:07 +08:00(自己编造的字符串)

%::z +hh:mm:ss

数字时区(例如,-04:00:00)

# date +%::z

+08:00:00

Sun, 26 May 2019 11:02:07 +08:00:00(自己编造的字符串)

%:::z

数字时区带有必要的精度 (例如,-04,+05:30)

# date +%:::z

+08

Sun, 26 May 2019 11:02:07 +08(自己编造的字符串)

%Z

按字母表排序的时区缩写 (例如,EDT)

# date +%Z

CST

2019年 05月 26日 星期日 11:01:56 CST

%n

换行

 

 

 

%t

输出制表符 Tab

 

 

 

 

三、用date命令,以给定的格式显示当前的时间

Date命令的输出结果是对当前时间,得以传递参数进行格式化

1、date +%Y-%m-%d

[root@localhost 桌面]# date +%Y-%m-%d

2019-05-26

2、date +'%Y-%m-%d %H:%M:%S'

[root@localhost 桌面]# date +'%Y-%m-%d %H:%M:%S'

2019-05-26 12:30:54

3、获取当前时间的unix时间戳

[root@localhost 桌面]# date +%s

1558845122

4、使用date命令获取一个特定时间的unix时间戳

[root@localhost 桌面]# date --date=20140506 +%s

1399305600

大家有什么好的案例,欢迎留言!会更新的奥!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3