给定日期Mon Aug 18 21:05:38 2014 +0200的提交,如何在几秒钟内获得它的Unix时间戳?

以下命令生成一个数字,该数字将丢弃该数字(大概是因为date的时区信息已被丢弃):

$ hg log -l1 --template '{date(date, "%s")}\n'
1408392338
$ date -d@1408392338
Mon Aug 18 22:05:38 CEST 2014

我正在有效地寻找与将提交日期作为Unix时间戳生成的git命令等效的命令:
git log -n1 --pretty=%ct

最佳答案

请求的时间戳是与时区无关的时间戳,因此与UTC时间无关。当date(..., "%s")产生一个相对于当前时区的数字时,应该通过组合localdate过滤器和TZ环境变量来设置时区来请求UTC输出:

TZ=UTC hg log -l1 --template '{date(date|localdate, "%s")}\n')

关于date - 获取Unix时间戳(以秒为单位)进行hg提交,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25596332/

10-14 14:12
查看更多