如何获得自从文件上次被修改在几秒钟后的时间?

自上次修改文件以来,我需要在几秒钟内获得时间。 ls -l不显示。

Solutions Collecting From Web of "如何获得自从文件上次被修改在几秒钟后的时间?"

在Linux中, date -r file打印上次修改date -r file的日期:

 date +%s -r file.txt 

要打印自上次修改以来的秒数,可以使用expr和当前日期(以秒为单位)减去上次修改的日期:

 echo $(($(date +%s) - $(date +%s -r file.txt))) 

在Mac OS X( date BSD味道)这将无法正常工作,你需要使用stat作为其他答案指出。

我知道标签是Linux,但stat -c语法在OSX上不适用于我。 这确实有效…

 echo $(( $(date +%s) - $(stat -f%c myfile.txt) )) 

而作为一个函数将被调用的文件名称:

 lastmod(){ echo "Last modified" $(( $(date +%s) - $(stat -f%c "$1") )) "seconds ago" } 

在BASH中,自上次修改以来,使用这个秒数:

  expr `date +%s` - `stat -c %Y /home/user/my_file`