是否有 Linux 深度差异工具也可以比较文件属性?

Mic*_*ntz 21 linux acl diff

是否有像 diff 这样的 Linux 工具可以递归比较文件和目录,但还增加了比较:扩展属性、acl、se 上下文?

abl*_*igh 7

在使用rsync -aHAX --delete记住添加-n-i标志之前,我已经这样做了。

这有点违反直觉,但请耐心等待。主要rsync命令是将两个目录同步在一起所需的命令。但-n -i导致它不同步(即做一个试运行),只是打印出它会做什么以及为什么。解析起来不是很好,但是您可以轻松获取文件名并通过管道传输到ls或类似。

这将查看所有内容,包括 mtimes、日期等,并且不会跟踪设备节点、套接字、命名管道等。上面的命令行也查看 ACL 和扩展属性。您可以通过将选项更改为rsync、将其限制为一台设备-x、更改软链接和硬链接行为等来调整您正在查看的内容。


小智 2

亚诺斯已经说过要做什么:

find /a -exec stat -c '%A %C %F %g %u %s %Y %n' {} \; >a
find /b -exec stat -c '%A %C %F %g %u %s %Y %n' {} \; >b

diff -u a b
Run Code Online (Sandbox Code Playgroud)

man 1 stat说:

%A     access rights in human readable form
%C     SELinux security context string
%F     file type
%g     group ID of owner
%u     user ID of owner
%s     total size, in bytes
%Y     time of last modification, seconds since Epoch
%n     file name
Run Code Online (Sandbox Code Playgroud)

要比较文件内容,您可以使用:

find -type f -exec md5sum '{}' ';' | sort | uniq --all-repeated=separate -w 33 | cut -c 35-

as described here: http://www.commandlinefu.com/commands/view/3555/find-duplicate-files-based-on-size-first-then-md5-hash
Run Code Online (Sandbox Code Playgroud)