【问题标题】:Linux find files where mtime and ctime are not equalLinux查找mtime和ctime不相等的文件
【发布时间】: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 | difflinux.die.net/man/2/stat 编写脚本。您可以格式化输出,使 ctime 在一列中; mtime 在另一个中,然后“区分”两列。
  • 感谢您的提示。如果有人明确将 mtime 设置为不同于应有的值(通常是黑客),这两者通常是不同的

标签: linux shell ctime


【解决方案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 几小时前 以来的最后更改或修改时间。此命令未捕获此时间范围的概念。

【讨论】:

  • 它给了我一个巨大的结果,包括大量的缓存文件。但现在我有一些工作要做。谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-16
  • 1970-01-01
  • 2021-03-10
  • 2011-06-02
  • 1970-01-01
  • 2015-08-24
相关资源
最近更新 更多