背景

  • 最近常用 unix timestamp ,特做此记录,用于快速查询;
  • 来源自 man date

命令格式

date [OPTION]... [+FORMAT]
OPTION 常用:
  -d, --date=STRING    display time described by STRING, not 'now'
  -s, --set=STRING     set time described by STRING
FORMAT 常用:
  %F     full date; like %+4Y-%m-%d
  %Y     year
  %m     month (01..12)
  %d     day of month (e.g., 01)
  %H     hour (00..23)
  %M     minute (00..59)
  %S     second (00..60)
  %u     day of week (1..7); 1 is Monday

常用命令

设置类

# 修改时间
date 040714502023    //将时间改为 2023-04-07 14:50:00
date -s "14:55:00"   //更改时间
date -s "2023-04-05 14:22:00"    //更改日期和时间

显示类

# 显示当前时间
date

# 获取指定时区的时间
TZ='America/Los_Angeles' date

# 显示上个月的第一天
date -d "1 month ago" +%Y%m01

# %u     day of week (1..7); 1 is Monday
date +%u

# 显示当前时区 +hhmm numeric time zone (e.g., -0400)
date +%z

# alphabetic time zone abbreviation (e.g., EDT)
date +%Z

# seconds since 1970-01-01 00:00:00 UTC
date +%s

# 获取指定时间的 unixstamp
date -d "14:30:00 2023-04-06" +%s

# unixstamp 转时间
date -d @1680849670

其他

  • GMT是前世界标准时,UTC是现世界标准时;UTC比GMT更精准,以原子时计时,适应现代社会的精确计时。

  • 1972年之前,格林威治时间(GMT)一直是世界时间的标准。1972年之后,GMT不再是一个时间标准了。

  • 时间戳 timestamp 就是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。

  • 下面周一到周日的简写和全称:

星期 全称 简写
周一 Monday Mon
周二 Tuesday Tue
周三 Wednesday Wed
周四 Thursday Thur
周五 Friday Fri
周六 Saturday Sat
周日 Sunday Sun
  • 下面是一月到十二月的简写和全称:
月份 全称 简写
一月 January Jan
二月 February Feb
三月 March Mar
四月 April Apr
五月 May May
六月 June Jun
七月 July Jul
八月 Augus Aug
九月 September Sept
十月 October Oct
十一月 November Nov
十二月 December Dec