Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

3.2. 使用 date 命令

date 实用程序在所有 Linux 系统上可用,并允许您显示和配置当前日期和时间。它经常在脚本中使用,以自定义格式显示系统时钟的详细信息。

有关如何更改时区或启用与远程服务器自动同步系统时钟的详情请参考 第 3.1 节 “使用 timedatectl 命令”

3.2.1. 显示当前日期和时间

要显示当前的日期和时间,请在没有附加命令行选项的情况下运行 date 命令:

date

这将显示星期几,后跟当前日期、本地时间、缩写时区和年份。

默认情况下,date 命令显示本地时间。要在 UTC 中显示时间,请使用 --utc 或 -u 命令行选项运行命令:

date --utc

您还可以在命令行中提供 +"格式" 选项来自定义显示信息的格式:

date +"format"

使用一个或多个支持的控制序列替换格式,如 例 3.6 “显示当前日期和时间” 所示。有关这些选项的完整列表,请参阅 表 3.1 “常用控制序列”,了解最常用格式化选项的列表,或 日期(1)手册页。

表 3.1. 常用控制序列

控制序列描述

%H

HH 格式的小时(如 17)。

%M

MM 格式的分钟(如 30)。

%S

SS 格式的第二个版本(如 24)。

%d

DD 格式的月日(如 16)。

%m

MM 格式的月份(如 09)。

%Y

YYYY 格式的年份(例如: 2016 年)。

%Z

时区缩写(如 CEST)。

%F

YYYY-MM-DD 格式的完整日期(例如 2016-09-16)。此选项等于 %Y-%m-%d

%T

HH:MM:SS 格式的全职(例如 17:30:24)。这个选项等于 %H:%M:%S

例 3.6. 显示当前日期和时间

要显示当前日期和本地时间,在 shell 提示符后输入以下内容:

~]$ date
Mon Sep 16 17:30:24 CEST 2016

要在 UTC 中显示当前的日期和时间,在 shell 提示符后输入以下内容:

~]$ date --utc
Mon Sep 16 15:30:34 UTC 2016

要自定义 date 命令的输出,请输入:

~]$ date +"%Y-%m-%d %H:%M"
2016-09-16 17:30

3.2.2. 更改当前时间

要更改当前时间,以 root 用户身份使用 --set 或 -s 选项运行 date 命令:

date --set HH:MM:SS

HH 替换为一小时,MM 替换为一分钟,SS 替换为秒,全部以两位数形式键入。

默认情况下,date 命令会将系统时钟设置为本地时间。要在 UTC 中设置系统时钟,请使用 --utc-u 命令行选项运行命令:

date --set HH:MM:SS --utc

例 3.7. 更改当前时间

要将当前时间更改为 11:26,以 root 用户身份运行以下命令:

~]# date --set 23:26:00

3.2.3. 更改当前日期

要更改当前日期,以 root 用户身份使用 --set 或 -s 选项运行 date 命令:

date --set YYYY-MM-DD

YYY 替换为四位数年,MM 替换为两位数月,DD 替换为每月的两位数。

请注意,在不指定当前时间的情况下更改日期会导致将时间设置为 00:00:00。

例 3.8. 更改当前日期

要将当前日期更改为 2017 年 6 月 2 日并保留当前时间(下午 11:26),以 root 用户身份运行以下命令:

~]# date --set "2017-06-02 23:26:00"