如何在 yyyy-MM-ddTHH:mm:ssZ 中使用 linux 中的 date 命令打印时间格式

Ank*_*pta 0 linux sysadmin

我需要在 Linux 中使用 date 命令以这种格式 'yyyy-MM-ddTHH:mm:ssZ'(例如 1985-04-12T23:20:50.52Z)的时间。你能帮我解决这个问题吗?

Dav*_*ica 6

百分之一秒精确再现世界协调时间 (UTC)(a/k/a Zulu time)需要创建自定义日期字符串并调用date -u.

注:为解决由托比·斯佩特注释的正确说法,有一种通过召开日期表示之间的1秒的差异潜力d,并通过n在原来的答案,由于使用单独的date电话,您可以通过使用缓解忧虑一次调用date(再次感谢托比提醒我我们可以使用printf 字段宽度修饰符来截断纳秒字段),例如

date -u +'%FT%T.%2NZ'
Run Code Online (Sandbox Code Playgroud)

示例结果

$ date -u +'%FT%T.%2NZ'
2018-04-14T17:45:28.20Z
Run Code Online (Sandbox Code Playgroud)

这将避免由于两次date调用而产生的 1 秒电位差。