命令行将ISO8601时间转换为Unix时间戳

Amo*_*mol 3 bash unix-timestamp

对于给定的ISO 8601日期,获得UNIX时间戳的最有效方法是什么,反之亦然?

有几个第三方网站可以做到这一点。但是我正在寻找可以在Linux提示符下执行的简单命令

u__*_*u__ 5

将ISO日期/时间转换为Unix时间戳

date --date='date' +"%s
Run Code Online (Sandbox Code Playgroud)

   bash-# date -d 'Fri Dec  8 00:12:50 UTC 2017' +"%s"
   bash-# 1512691970
Run Code Online (Sandbox Code Playgroud)

男人-一个约会

   -d, --date=STRING
          display time described by STRING, not 'now'

   %s     seconds since 1970-01-01 00:00:00 UTC
Run Code Online (Sandbox Code Playgroud)

将Unix时间戳转换为ISO日期/时间

date -Iseconds -d @<unix timestamp>
Run Code Online (Sandbox Code Playgroud)

   bash-# date -Iseconds -d @1512711426
   bash-# 2017-12-07T21:37:06-0800
Run Code Online (Sandbox Code Playgroud)

男人-一个约会

   -d, --date=STRING
          display time described by STRING, not 'now'


   -I[TIMESPEC], --iso-8601[=TIMESPEC]
          output  date/time  in  ISO 8601 format.  
          TIMESPEC='date' for date only (the default), 'hours',                             
          'minutes', 'seconds', or 'ns' for date and time to the 
          indicated precision.
Run Code Online (Sandbox Code Playgroud)