0%

Linux下Shell命令进行日期date和时间戳timestamp的转换

我们常常会遇到如下情况,把日期转换成timestamp,或者把timestamp转换成日期格式。

初级选手一般都会打开网页,有些站点提供了日期转换的功能。

高级选手可以直接通过shell命令,就能成功的完成日期和timestamp的转换。

我们先来看看Linux的date命令。

  • 显示日期时间
1
2
# date
Wed Mar 4 11:44:05 CST 2020
  • 显示带时区的日期时间
1
2
# date -R
Wed, 04 Mar 2020 11:44:41 +0800
  • 按指定格式显示日期时间
1
2
# date '+%Y-%m-%d %H:%M:%S %Z'
2020-03-04 11:46:14 CST
  • 查看当前时间的timestamp
1
2
# date +%s
1583293699
  • 显示描述类型的日期时间
1
2
# date -d "1970-01-01 UTC"
Thu Jan 1 08:00:00 CST 1970

-d的参数是指:-d, --date=STRING display time described by STRING, not 'now'

  • 日期时间转timestamp
1
2
# date -d '1970-01-01 UTC' +%s
0
  • timestamp转日期时间
1
2
# date -d @1583395499.709
Thu Mar 5 16:04:59 CST 2020