Linux命令系列详解---------date命令详解
文章目录
- Linux命令系列详解---------date命令详解
- 前言
- 一、date命令简介
- 二、使用示例
- 1.获取命令帮助
- 2.查看命令版本
- 3.查看系统日期及时间
- 4.以YYYY-MM-DD显示日期
- 5.以MM/DD/YY显示日期
- 6.以MM/DD/YYYY显示日期
- 7.获取系统年份、月份、日期
- 8.获取系统星期
- 9.获取系统时区
- 10.查询当前日期是一年中的第几周
- 11.获取系统时间
- 12.显示十二小时制时间
- 13.显示24小时制时间
- 14.按照指定样式显示时间
- 15.从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数
- 16.修改系统时间
- 17.修改时间及日期
- 18.按照指定格式内容显示时间和日期
- 19.日期和时间分行显示
- 20.按照字符串的设置显示日期
- 三、使用语法及参数说明
- 1.使用语法
- 2.参数说明
- 3.参数说明
- 4.日期格式符号
前言
Linux date命令可以用来显示或设定系统的日期与时间。
一、date命令简介
在显示方面使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记。在备份文件的时候我们常结合此命令生成当前日期和时间的文件名。格式符前面以+加号开头,若是不以加号作为开头,则表示要设定时间,而时间格式为 MMDDhhmm[[CC]YY][.ss],其中 MM 为月份,DD 为日,hh 为小时,mm 为分钟,CC 为年份前两位数字,YY 为年份后两位数字,ss 为秒数。
二、使用示例
1.获取命令帮助
[root@localhost ~]# date --help
2.查看命令版本
[root@localhost ~]# date --version
date (GNU coreutils) 5.97
Copyright © 2006 Free Software Foundation, Inc.
This is free software. You may redistribute copies of it under the terms of
the GNU General Public License http://www.gnu.org/licenses/gpl.html.
There is NO WARRANTY, to the extent permitted by law.
Written by David MacKenzie.
3.查看系统日期及时间
[root@localhost ~]# date
Sun Apr 9 01:48:14 EDT 2023
4.以YYYY-MM-DD显示日期
[root@localhost ~]# date +%F
2023-04-09
5.以MM/DD/YY显示日期
[root@localhost ~]# [root@testserver ~]# date +%D
04/09/23
6.以MM/DD/YYYY显示日期
[root@localhost ~]# date +%x
04/09/2023
7.获取系统年份、月份、日期
[root@localhost ~]# date +%Y
2023
[root@localhost ~]# date +%m
04
[root@localhost ~]# date +%d
09
8.获取系统星期
[root@localhost ~]# date +%a
Sun
[root@localhost ~]# date +%A
Sunday
[root@localhost ~]# date +%u
7
[root@localhost ~]# date +%w
0
9.获取系统时区
[root@localhost ~]# date +%z
-0400
[root@localhost ~]# date +%Z
EDT
10.查询当前日期是一年中的第几周
[root@localhost ~]# date +%W
14
[root@localhost ~]# date +%U
15
11.获取系统时间
[root@localhost ~]# date +%T
01:57:48
[root@localhost ~]# date +%X
01:57:51 AM
12.显示十二小时制时间
[root@localhost ~]# date +%r
01:58:24 AM
13.显示24小时制时间
[root@localhost ~]# date +%R
01:58
14.按照指定样式显示时间
[root@localhost ~]# date +%H-%M.%S
01-59.19
[root@localhost ~]# date +%H.%M.%S
01.59.47
15.从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数
[root@localhost ~]# date +%s
1681020040
16.修改系统时间
[root@localhost ~]# date -s 02:02:10
//修改系统时间
Sun Apr 9 02:02:10 EDT 2023
17.修改时间及日期
[root@localhost ~]# date -s “02:02:10 20230409”
//修改时间和日期
Sun Apr 9 02:02:10 EDT 2023
[root@localhost ~]# date -s “20230409”//修改日期,未设置时间的,则默认为00:00:00
Sun Apr 9 02:02:10 EDT 2023
[root@localhost ~]#hwclock --set --date “2023-04-09 02:02:10”//修改硬件时间
Sun Apr 9 02:02:10 EDT 2023
18.按照指定格式内容显示时间和日期
[root@localhost ~]# date
Sun Apr 9 02:31:49 EDT 2023
[root@localhost ~]# date -d “00:00:00 1234-01-01”//按照格式输出时间1234年1月1日00:00;实际时间不会被修改
Sun Jan 1 00:00:00 LMT 1234
[root@localhost ~]# date -d “01:00:00 1234-01-01”//按照格式输出时间1234年1月1日01:00;实际时间不会被修改
Sun Jan 1 01:00:00 LMT 1234
[root@localhost ~]# date
Sun Apr 9 02:36:38 EDT 2023
19.日期和时间分行显示
[root@localhost ~]# date +%F%n%T
2023-04-09
02:04:02
20.按照字符串的设置显示日期
[root@localhost ~]# date -d “next month” +%Y-%m-%d
//显示下个月今天的日期
2023-05-09
[root@localhost ~]# date -d “-2 month ago” +%Y-%m-%d//显示两个月后今天的日期,本处易混淆的地方是-2表示的是往后推,也就是时间正序,而+2的话,就是往前推,也就是以前的时间
2023-06-09
[root@localhost ~]# date -d “+2 year ago” +%Y-%m-%d//显示两年前今天的日期
2021-04-09
[root@localhost ~]# date -d “-2 year ago” +%Y-%m-%d//显示两年后今天的日期
2025-04-09
三、使用语法及参数说明
1.使用语法
用法:#date [参数选项] [+格式]
或者:date [-u|–utc|–universal] [MMDDhhmm[[CC]YY][.ss]]
2.参数说明
参数 | 参数说明 |
---|---|
-d, --date=STRING | 显示 datestr 中所设定的时间 (非系统时间) |
-s, --set=STRING | 将系统时间设为 datestr 中所设定的时间 |
–version | 显示版本编号 |
-u, --utc, --universal | 打印或设置协调世界时(UTC) |
–help | 帮助 |
3.参数说明
符号 | 符号说明 |
---|---|
% | 打印% |
%n | 下一行 |
%t | 跳格 |
%H | 小时(00…23) |
%I | 小时(01…12) |
%k | 小时(0…23) |
%l | 小时(1…12) |
%M | 分钟(00…59) |
%p | 显示本地 AM 或 PM |
%r | 直接显示时间 (12 小时制,格式为 hh:mm:ss [A/P]M) |
%R | 24小时制方式显示时间,相当于%H:%M |
%s | 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数 |
%S | 秒(00…60) |
%T | 直接显示时间 (24 小时制) |
%X | 相当于 %H:%M:%S |
%z | 数字方式显示时区 |
%Z | 字母缩写方式显示时区 |
4.日期格式符号
符号 | 符号说明 |
---|---|
%a | 星期缩写(Sun…Sat) |
%A | 星期完整英文(Sunday…Saturday) |
%b | 月份缩写 (Jan…Dec) |
%B | 月份完整英文(January…December) |
%c | 直接显示日期与时间 |
%d | 日 (01…31) |
%D | 直接显示日期 (mm/dd/yy) |
%e | 一个月中的第几天,类似%_d |
%F | 完整的日期,相当于%Y-%m-%d |
%h | 同 %b |
%j | 一年中的第几天 (001…366) |
%m | 月份 (01…12) |
%u | 一周中的第几天 (1…7) (1是星期一) |
%U | 一年中的第几周 (00…53) (以 Sunday 为一周的第一天的情形) |
%w | 一周中的第几天 (0…6)(0是星期天) |
%W | 一年中的第几周 (00…53) (以 Monday 为一周的第一天的情形) |
%x | 直接显示日期 (mm/dd/yy) |
%y | 年份的最后两位数字 (00.99) |
%Y | 完整年份 (0000…9999) |