date

date命令用于打印或者设置系统的时间。

命令格式

date [OPTION]... [+FORMAT]
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

注意:
以下目录中tmp为目录,请忽略

中英文切换

(base) ➜  tmp export LC_TIME=en_US.UTF-8
(base) ➜  tmp date +%A
Wednesday
(base) ➜  tmp export LC_TIME=zh_CN.UTF-8
(base) ➜  tmp date +%A
星期三

常见参数

  1. -d,--date==string
    打印根据string描述的时间。
(base) ➜  ~ date -d "2020-01-01 11:11:11"
2020年 01月 01日 星期三 11:11:11 CST
(base) ➜  ~ date -d "yesterday"
2020年 04月 21日 星期二 01:39:40 CST
  1. -f, --file=DATEFILE
    类似与--date,但是是从文件读取,每次一行
(base) ➜  tmp echo "now" >> datelist
(base) ➜  tmp echo "yesterday" >> datelist
(base) ➜  tmp date -f datelist
2020年 04月 22日 星期三 01:44:30 CST
2020年 04月 21日 星期二 01:44:30 CST
  1. -I[FMT], --iso-8601[=FMT]
    以ios-8601的格式打印时间,格式类似为2006-08-14T02:34:56-06:00
    注意: 以-I时,FMT必须紧挨着
    支持参数:
    • ‘hours’
    • ‘minutes’
    • ‘date’
    • ‘seconds’
    • ‘ns’
(base) ➜  tmp date -Idate
2020-04-22
(base) ➜  tmp date -Iseconds
2020-04-22T01:48:18+08:00
  1. -R, --rfc-email
(base) ➜  tmp date -R
Wed, 22 Apr 2020 01:49:23 +0800

  1. -u, --utc, --universal
    打印utc时间
(base) ➜  ~ date --utc
2020年 04月 21日 星期二 17:34:41 UTC
  1. Format支持参数

注意:
如果格式化中带了空格时,请用引号包裹起来
只列举了常见的格式,其他一些获取星期,时区,一年中第几天的参数请用man date查看
可以使用%-S的格式来自定义补齐方式,默认使用0补齐位数,例子如下
以 2020-04-22 23:45:57为例

  • 通用格式
(base) ➜  tmp date -d "2020-04-22 23:45:57" "+%Y-%m-%d %H:%M:%S"
2020-04-22 23:45:57
(base) ➜  tmp date -d "2020-04-22 23:45:07" "+%Y-%m-%d %H:%M:%-S"
2020-04-22 23:45:7
单位 格式 示例 描述
日期 %D 04/22/20
%Y 2020
%y 20
%m 04
%d 22
%H 23
%I 11
%M 45
%S 57
%s 1587570357 时间戳

你可能感兴趣的:(date)