在 FreeBSD 控制台上获取标准 ISO 8601 格式的当前日期和时间

在 FreeBSD 控制台上获取标准 ISO 8601 格式的当前日期和时间

我想在标准控制台上方便地获取当前日期时间ISO 8601格式:YYYY-MM-DDTHH:MM:SSZ

例如:2019-07-13T01:09:35Z

我知道该date命令显示当前日期时间,但默认情况下不是 ISO 8601 格式。该-I选项以标准格式显示仅日期部分。并-Iseconds显示2019-07-13T01:18:10+00:00.这很接近,但是:

  • 我更喜欢Z最后的偏移量为零,而不是+00:00.
  • 对于这样一个基本的常见任务,我想要输入更短的内容。

我的问题与这个,但针对的是 BSD 而不是 Linux(显然)。

答案1

由于您想要“Z”(GMT),您可以简单地使用格式字符串和文字 T 和 Z 字符来完成

% TZ=GMT date +"%Y-%m-%dT%H:%M:%SZ"
2019-07-13T02:04:16Z

如果您不想每次都输入,可以将其设为函数或脚本

例如

% isotime()
{
  TZ=GMT date +"%Y-%m-%dT%H:%M:%SZ"
}

% isotime
2019-07-13T02:06:42Z

相关内容