计算文件修改的时间

时间:2013-06-26 14:27:17

标签: unix date time

我需要一个计算文件修改时间的脚本。这可能是几天前或几分钟前。 我已经能够从stat-command获取修改日期和时间。我将这些数据存储在两个不同的变量中。 现在我需要用“now”来计算这个日期和时间之间的差异。 我可以找到很多关于获得两个日期或时间之间差异的例子。但如果我的时间可以追溯到一天以上呢? 恩。 modif date 2013-06-25 23:55:00     现在2013-06-26 00:10:08 如果我计算出这两者之间的差异,我需要15分8秒的答案。 有人能帮助我吗?

2 个答案:

答案 0 :(得分:2)

Jens回答有效,这是一个例子。

#!/bin/bash

MOD_TIME=`stat -c %Y thisfile.txt`
RIGHTNOW=`date +%s`
HOW_LONG=`expr $RIGHTNOW - $MOD_TIME`
NUM_MINS=`expr $HOW_LONG / 60`
NUM_SECS=`expr $HOW_LONG % 60`

echo "$NUM_MINS minutes, $NUM_SECS seconds since modified."

答案 1 :(得分:1)

stat以秒为单位给出时间,然后减去这些值。如果你想要分钟,则除以60,使用模60来获得剩余的秒数。