【问题标题】:Comparing md5 checksums of the output of ls -la to detect file changes比较 ls -la 输出的 md5 校验和以检测文件更改
【发布时间】:2018-01-04 19:45:20
【问题描述】:

将获取目录列表的 md5 校验和,如:

ls -la | md5

是一种在目录中查找文件更改的有效且准确的方法吗?

【问题讨论】:

  • 这将非常有效,但一点也不准确。它既有误报(当输出从Oct 23 12:34 更改为Oct 23 2017,或时区/语言环境更改时),也有误报(更改ACL、更改fs 但不是文件、更改时区增量较小)。

标签: linux bash md5 ls


【解决方案1】:

这可能在大多数情况下都有效,但不能防止文件在同一分钟内发生更改并最终具有相同大小的情况。

inotify 程序对您有用吗?看到这个帖子:

https://askubuntu.com/questions/541128/monitor-folder-contents-changes

对于它的价值,您可以 md5 目录中的每个文件,然后 md5 结果集.. 效率不高,但会捕获边缘情况。见下文:

[user@local ~/tmp] find . -type f  -exec md5sum {} \;
e4982b4d6725d408d405f9800fdb4b77 *./1.txt
beb755b5b40ff3b449100455b96c937e *./2.txt
2466877a535c4f16bbec375f3085ab8d *./3.txt

[user@local ~/tmp] find . -type f  -exec md5sum {} \; | md5sum
c73e5ae62984d69c94b5b24d75c07025 *-

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-27
    • 1970-01-01
    • 2014-06-21
    • 2012-05-18
    相关资源
    最近更新 更多