如何在Shell中以特定格式获取当前日期和时间

时间:2019-02-27 09:27:45

标签: shell unix

我只想在外壳中使用以下格式获取系统当前时间

  Expected Format:
  2019-02-14T08:08:12.300Z

我尝试了下面的一段脚本,但是返回了不同的内容。

  CURRENTDATE=`date +"%Y-%m-%d %T"`
  echo $CURRENTDATE

输出

   2019-02-27 01:22:57

我只是在Linux框中运行了date命令,并得到以下响应:

   -bash-3.2$ date
   Wed Feb 27 01:43:26 PST 2019

我们将以上输出作为输入JSON文件传递。但是我们的JSON不接受此输出。所以我只想以上述指定的格式(期望格式)传递日期和时间格式。

1 个答案:

答案 0 :(得分:0)

您可以使用:

dt=$(date '+%Y-%m-%dT%T.%zZ')
echo "$dt"

2019-02-27T04:35:56.-0500Z

还请注意使用--iso-8601=seconds

date --iso-8601=seconds

2019-02-27T04:37:29-05:00