如何使用 date 命令 ?

2018-02-12 18:18:00
Angela
转贴
298

在本文中, 我们会通过一些案例来演示如何使用 Linux 中的 date 命令。date 命令可以用户输出/设置系统日期和时间。 date 命令很简单, 请参见下面的例子和语法。

-- Rosehosting


本文导航

◈ 语法                                                       06%

◈ 案例                                                        09%

◈ 1、 查找 5 周后的日期                            10%

◈ 2、 查找 5 周后又过 4 天的日期             12%

◈ 3、 获取下个月的日期                            14%

◈ 4、 获取下周日的日期                            16%

◈ 5、 以 yyyy-mm-dd 的格式显示日期      19%

◈ 6、 以 mm/dd/yyyy 的格式显示日期       21%

◈ 7、 只显示时间                                      23%

◈ 8、 显示今天是一年中的第几天              24%

◈ 9、 与格式化相关的选项                        25%

◈ 10、 设置系统时间                                 85%

编译自 | https://www.rosehosting.com/blog/use-the-date-command-in-linux/ 
       作者 | Rosehosting
       译者 | lujun9972

在本文中, 我们会通过一些案例来演示如何使用 Linux 中的 date 命令。date 命令可以用户输出/设置系统日期和时间。 date 命令很简单, 请参见下面的例子和语法。

默认情况下,当不带任何参数运行 date 命令时,它会输出当前系统日期和时间:


    $ date
    Sat  2 Dec 12:34:12 CST 2017


语法


    Usage: date [OPTION]... [+FORMAT]
      or:  date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
    以给定格式显示当前时间,或设置系统时间。


案例

下面这些案例会向你演示如何使用 date 命令来查看前后一段时间的日期时间。

1、 查找 5 周后的日期


    date -d "5 weeks"
    Sun Jan  7 19:53:50 CST 2018


2、 查找 5 周后又过 4 天的日期


    date -d "5 weeks 4 days"
    Thu Jan 11 19:55:35 CST 2018


3、 获取下个月的日期


    date -d "next month"
    Wed Jan  3 19:57:43 CST 2018


4、 获取下周日的日期


    date -d last-sunday
    Sun Nov 26 00:00:00 CST 2017


date 命令还有很多格式化相关的选项, 下面的例子向你演示如何格式化 date 命令的输出.

5、 以 yyyy-mm-dd 的格式显示日期


    date +"%F"
    2017-12-03


6、 以 mm/dd/yyyy 的格式显示日期


    date +"%m/%d/%Y"
    12/03/2017


7、 只显示时间


    date +"%T"
    20:07:04


8、 显示今天是一年中的第几天


    date +"%j"
    337


9、 与格式化相关的选项


格式 说明
%% 显示百分号 (%)。
%a 星期的缩写形式 (如: Sun)。
%A 星期的完整形式 (如: Sunday)。
%b 缩写的月份 (如: Jan)。
%B 当前区域的月份全称 (如: January)。
%c 日期以及时间 (如: Thu Mar 3 23:05:25 2005)。
%C 当前世纪;类似 %Y, 但是会省略最后两位 (如: 20)。
%d 月中的第几日 (如: 01)。
%D 日期;效果与 %m/%d/%y 一样。
%e 月中的第几日, 会填充空格;与 %_d 一样。
%F 完整的日期;跟 %Y-%m-%d 一样。
%g 年份的后两位 (参见 %G)。
%G 年份 (参见 %V);通常跟 %V 连用。
%h 同 %b。
%H 小时 (00..23)。
%I 小时 (01..12)。
%j 一年中的第几天 (001..366)。
%k 小时, 用空格填充 ( 0..23); 与 %_H 一样。
%l 小时, 用空格填充 ( 1..12); 与 %_I 一样。
%m 月份 (01..12)。
%M 分钟 (00..59)。
%n 换行。
%N 纳秒 (000000000..999999999)。
%p 当前区域时间是上午 AM 还是下午 PM;未知则为空。
%P 类似 %p, 但是用小写字母显示。
%r 当前区域的 12 小时制显示时间 (如: 11:11:04 PM)。
%R 24 小时制的小时和分钟;同 %H:%M。
%s 从 1970-01-01 00:00:00 UTC 到现在经历的秒数。
%S 秒数 (00..60)。
%t 制表符。
%T 时间;同 %H:%M:%S。
%u 星期 (1..7);1 表示 星期一。
%U 一年中的第几个星期,以周日为一周的开始 (00..53)。
%V 一年中的第几个星期,以周一为一周的开始 (01..53)。
%w 用数字表示周几 (0..6); 0 表示 周日。
%W 一年中的第几个星期, 周一为一周的开始 (00..53)。
%x 当前区域的日期表示(如: 12/31/99)。
%X 当前区域的时间表示 (如: 23:13:48)。
%y 年份的后面两位 (00..99)。
%Y 年。
%z 以 +hhmm 的数字格式表示时区 (如: -0400)。
%:z 以 +hh:mm 的数字格式表示时区 (如: -04:00)。
%::z 以 +hh:mm:ss 的数字格式表示时区 (如: -04:00:00)。
%:::z 以数字格式表示时区, 其中 : 的个数由你需要的精度来决定 (例如, -04, +05:30)。
%Z 时区的字符缩写(例如, EDT)。

10、 设置系统时间

你也可以使用 date 来手工设置系统时间,方法是使用 --set 选项, 下面的例子会将系统时间设置成 2017 年 8 月 30 日下午 4 点 22 分。


    date --set="20170830 16:22"


好了,date命令就介绍到这了,如果你喜欢这篇帖子或者有其它date相关的东西,请点击下面的按钮分享或者留言。谢谢!





via: https://www.rosehosting.com/blog/use-the-date-command-in-linux/

作者:rosehosting 译者:lujun9972 校对:wxy


发表评论
评论通过审核后显示。
联系我们