与所有事情一样,解决方案是perl脚本:
#!/usr/bin/perl
use File::Find;
my $directory1 = '/tmp/temp1';
my $directory2 = '/tmp/temp2';
find(\&hashfiles,$directory1);
sub hashfiles {
my $file1 = $File::Find::name;
(my $file2 = $file1) =~ s/^$directory1/$directory2/;
my $mode1 = (stat($file1))[2] ;
my $mode2 = (stat($file2))[2] ;
my $uid1 = (stat($file1))[4] ;
my $uid2 = (stat($file2))[4] ;
print "Permissions for $file1 and $file2 are not the same\n" if ( $mode1 != $mode2 );
print "Ownership for $file1 and $file2 are not the same\n" if ( $uid1 != $uid2 );
}
如果directory2中不存在文件但存在于directory1中,则还会输出,因为统计信息将不同.
这篇博客介绍了一个Perl脚本,用于比较两个目录中文件的权限和所有权。当directory2中文件的权限或所有者与directory1中对应文件不同时,脚本会输出相关信息。如果directory2中缺少directory1中的文件,也会因为统计信息差异而显示差异。
4510

被折叠的 条评论
为什么被折叠?



