【Linux】时间戳指令(date)

一、指令说明

1、指令格式

date [选项] [+格式]

2、选项说明

选项说明
-d, --date=STRING显示由STRING描述的时间,而不是当前时间
-f, --file=DATEFILE将文件中的每一行时间进行显示,相当于执行多条-d
-I[TIMESPEC], --iso-8601[=TIMESPEC]以ISO 8601格式输出日期,使用TIMESPEC进行精度的指定,TIMESPEC可选范围有{‘date’,‘hours’,‘minutes’,‘seconds’,‘ns’},默认取值为‘date’
-r, --reference=FILE显示FILE最后一次修改的时间戳
-R, --rfc-2822以RFC8601格式输出日期,Example:Mon, 07 Aug 2006 12:34:56 +0800
–rfc-3339=TIMESPEC以RFC 3339格式输出日期,使用TIMESPEC进行精度的指定,TIMESPEC可选范围有{‘date’,‘seconds’,‘ns’}
-s, --set=STRING设置系统时间为STRING
-u, --utc, --universal打印或设置协调世界时(UTC)
–help显示此帮助并退出
–version输出版本信息并退出

3、格式说明

格式

二、常用功能

1、时间查询

a)可以通过描述一个日期查询相关星期信息:

  • 使用 -d 选项进行查询

    [root@host ~]# date -d "2020-12-12"
    Sat Dec 12 00:00:00 CST 2020
    [root@host ~]# date -d "2020-12-12 22:01:08"
    Sat Dec 12 22:01:08 CST 2020
    
  • 使用 -f 选项进行统一查询

    [root@host ~]# cat testfile.txt
    2020-01-01
    2022-02-02 10:23:24
    [root@host ~]# date -f testfile.txt
    Wed Jan 1 00:00:00 CST 2020
    Wed Feb 2 10:23:24 CST 2022
    

b) 按照指定时间精度进行显示

  • 使用 -I 选项进行查询

    [root@host ~]# date -I
    2023-05-11
    [root@host ~]# date -Idate
    2023-05-11
    [root@host ~]# date -Ihours
    2023-05-11T11+0800
    [root@host ~]# date -Iminutes
    2023-05-11T11:02+0800
    [root@host ~]# date -Iseconds
    2023-05-11T11:02:15+0800
    [root@host ~]# date -Ins
    2023-05-11T11:02:20,218557849+0800
    
  • 使用 -R 选项进行查询

    [root@host ~]# date -R
    Thu, 11 May 2023 11:00:17 +0800
    
  • 使用 --rfc-3339=TIMESPEC 选项进行查询

    [root@host ~]# date --rfc-3339=date
    2023-05-11
    [root@host ~]# date --rfc-3339=seconds
    2023-05-11 10:56:27+08:00
    [root@host ~]# date --rfc-3339=ns
    2023-05-11 10:56:32.000969769+08:00
    

b) 按照指定格式进行显示

  • 只显示日期信息

    [root@host ~]# date +%F
    2023-05-11
    [root@host ~]# date +%D
    05/11/23
    [root@host ~]# date +%x
    05/11/2023
    [root@host ~]# date +%Y_%m_%d
    2023_05_11
    [root@host ~]# date +%Y%m%d
    20230511
    
  • 只显示星期信息

    [root@host ~]# date +%a
    Sun
    [root@host ~]# date +%A
    Sunday
    [root@host ~]# date +%u
    7
    [root@host ~]# date +%w
    0
    
  • 只显示时间信息

    [root@host ~]# date +%T         //当前时区24小时制时间
    14:02:12
    [root@host ~]# date +%X         //格林威治时区24小时制时间
    02:02:17 PM
    [root@s145 ~]# date +%r         //当前时区12小时制时间
    02:02:58 PM
    [root@host ~]# date +%R         //当前时区24小时制时间
    14:05
    
  • 只显示时区信息

    [root@host ~]# date +%z
    +0800
    [root@host ~]# date +%Z
    CST
    
  • 分行显示

    [root@host ~]# date +%F%n%T
    2023-05-11
    14:12:12
    

c)按照世界统一时间进行显示

  • 使用 -u 选项进行查询

    [root@host ~]# date
    Thu May 11 10:11:12 CST 2023
    [root@host ~]# date -u
    Thu May 11  02:11:13 UST 2023
    

2、设置系统时间

[root@host ~]# date -s "10:11:12 20230101"
Sun Jan 1 10:11:12 CST 2023
[root@host ~]# date
Sun Jan 1 10:11:12 CST 2023

3、查询文件修改时间

[root@host ~]# date -r testfile.txt
Thu May 11 17:50:36 CST 2023
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值