GNUdate
和touch
命令(可能还有其他命令)用于@date
将日期字符串定义为自纪元以来的秒数。例如:
$ TZ=UTC date -d@10
Thu Jan 1 00:00:10 UTC 1970
我正在回答一个问题,想向 OP 指出记录此特定功能的位置,但我找不到它。也不解释一下man date
。man touch
最接近的是手册页“示例”部分中的内容date
:
Convert seconds since the epoch (1970-01-01 UTC) to a date
$ date --date='@2147483647'
的页面info
指出date
这是在coreutils
5.3.0 中引入的,但也没有真正进一步解释它:
Or if you do not mind depending on the `@' feature present since
coreutils 5.3.0, you could shorten this to:
date -d @946684800 +"%F %T %z"
1999-12-31 19:00:00 -0500
那么,@seconds
记录在哪里呢?我应该在哪里了解它?我可以向那些不了解它的人指出哪里?这就是man date
我们所拥有的最好的东西吗?
答案1
这记录在GNU Coreutils
信息页面的第 28.9 节“自纪元以来的秒数”中:
info Coreutils 'Seconds since the Epoch'
我在这里添加第一段:该部分内容如下:
如果在数字前面加上“@”,则它表示以秒数表示的内部时间戳。该数字可以包含内部小数点(“
.' or
,”);内部表示不支持的任何多余精度都会被截断为负无穷大。此类数字不能与任何其他日期项组合,因为它指定完整的时间戳。