编辑:这显然是不可能的,请参阅下面的 Barmars 回答。
我经常使用下面的命令来创建用于存档的时间戳。我想在字符串中添加毫秒。那可能吗?我在 osx 和 linux 上都使用这个脚本,所以一个适用于两者的解决方案会很好。秒是否在有或没有毫秒的情况下向上或向下舍入?(分钟是向上还是向下取整?)
date -n +%Y%m%d%H%M%S
我认为没有办法可以便携地做到这一点。请参阅POSIX strftime 规范,它没有提及毫秒或纳秒。
此外, 的输入strftime
是 a struct tm
。这个结构的规范在这里,它不包括比秒更精确的任何东西。纳秒在timespec
结构中,但这主要用于时间段,而不是时钟时间,并且系统不需要将时钟时间保持在秒分辨率以上。
一般来说你不能,但我想我会提到ts
,你可以使用“%.S”来获得毫秒精度。以防万一您使用date
时间戳输出行。
%N gives you nanoseconds and you could divide that by 1000000
你可以试试%3N
,它适用于 windows 和 Debian 9 的 git bash。