Bash:如何将文件的修改时间转换为纪元?

时间:2014-11-12 14:04:31

标签: bash shell date

我有一项工作任务......自动执行所有产品发布程序。

其中一个步骤是停止公司的在线流程。为此,我需要登录内部编码的java仪表板,停止特定的java任务,tail -f日志和当没有写入新数据时 - 这意味着系统已准备好开始发布过程。

我打算使用stat命令查找日志文件的最后修改日期和时间,但是为了让我更容易使用该值,我想翻译它到大纪元时间,它是如何完成的?

我知道如何进行相反的翻译..例如date -d@1415800764

2 个答案:

答案 0 :(得分:3)

如果您已经在使用stat,那么只需让它为您提供所需的输出即可。使用%Y格式。

而不是(或其他)

$ stat c | grep ^Modify
Modify: 2014-11-12 07:17:29.000000000 -0500

使用

$ stat -c %Y c
1415794649

答案 1 :(得分:1)

试试这个:

date --date="Wed Nov 12 14:59:24 CET 2014" +%s

输出将是:

# 1415800764

适用于多种格式,例如

 date --date="12-NOV-14" +%s