Linux查找mtime和ctime不相等的文件

Posted

技术标签:

【中文标题】Linux查找mtime和ctime不相等的文件【英文标题】:Linux find files where mtime and ctime are not equal 【发布时间】:2015-08-23 14:49:10 【问题描述】:

我可以做一个find 并列出 ctime 和 mtime 不相等的文件吗?

find . -type f -name '*.php' -ctime -5 MISSING_PART

MISSING_PART:类似于-mtime != -ctime

【问题讨论】:

抱歉 - 我不知道“查找”中有任何此类选项。我假设您知道the difference between ctime and mtime,并且两者通常相同。建议:尝试使用stat | cut | diff:linux.die.net/man/2/stat 编写脚本。您可以格式化输出,使 ctime 在一列中; mtime 在另一个中,然后“区分”两列。 感谢您的提示。如果有人明确将 mtime 设置为不同于应有的值(通常是黑客),这两者通常是不同的 【参考方案1】:

这可以使用stat 命令获得。 stat 命令用于显示文件或文件系统状态。 -c 选项用于指定此命令的输出格式。 %n 格式用于指定文件名。 %Y 用于指定自纪元以来的最后一次修改时间,%Z 指定自纪元以来的最后一次更改时间。

命令find . -exec stat -c %n#%Y#%Z \; | awk -F# 'if ($2 != $3) print $1'可用于提取更改时间和修改时间不相等的文件。

find-ctime n-mtime n 选项指的是自n 几小时前 以来的最后更改或修改时间。此命令未捕获此时间范围的概念。

【讨论】:

它给了我一个巨大的结果,包括大量的缓存文件。但现在我有一些工作要做。谢谢

以上是关于Linux查找mtime和ctime不相等的文件的主要内容,如果未能解决你的问题,请参考以下文章

Linux 查找文件 -mtime

linux 中find命令的使用摘要

ctime, mtime, 存放目录, windows, linux

Linux下find , atime, ctime,mtime

atime mtime ctime 查找最近修改的文件

find命令下的atime,ctime,mtime