是否有一个工具或命令将比较两台目录树在不同的计算机上,并输出差异列表,包括权限的差异?
我正在寻找http://winmerge.org/ ,它似乎没有这个function(它似乎比较文件大小和内容,但不是属性)。 看看选项,但没有看到一个设置来改变这一点。
过去我遇到过一些问题,在更新之后,某些驱动程序目录的权限会变得混乱,并且很难将工作安装与破坏的安装进行比较。
你有没有经过使用PowerShell来做到这一点?
PS2包含一个cmdlet Get-ACL ,它为给定的文件夹/文件枚举NFTS权限(包括所有者)。
找不到在Windows中对文件权限执行“差异”的任何内容,但我知道RoboCopy和Richcopy( http://technet.microsoft.com/zh-cn/magazine/2009.04.utilityspotlight.aspx?pr = blog )会复制文件,同时保留像权限这样的NTFS属性。
您可以使用ICACLs.exe , 包括自Vista以后将权限转储到文本文件。 然后使用WinDiff或Beyond Compare,或者任何你喜欢的文件比较工具,来查看差异。
示例icacls命令行:
icacls C:\Folder1 /T > Folder1.txt
强烈推荐:setacl。
这是一个免费的工具,你可以从helgeklein.com获得。
比较两个目录我做了这个:
– 列出了两个文件夹中的所有ACL
– 以文本格式列出
与setacl这是这样做的
setacl -ot文件-on文件夹-actn列表-lst“f:tab”> listA
setacl -ot file -on folderB -actn list -lst“f:tab”> listB
– 比较2个列表
我用diff (cygwin收集)
diff listA listB
我在比较两个用户文件夹时遇到了问题。
除了拥有文件夹的用户之外,这些文件夹需要具有相同的ACL。
我解决了这个问题,用一个普通的名字“customer”replaceACL中的用户名。
这使我可以比较ACL而不会对用户名本身有明显的区别。
可能值得去看看:
笔记:
不幸的是,这两个是不是免费的,而不是做你想要的,但可能有助于你的任务…
AFAIK没有现成的工具,可以轻松方便地做NTFS权限比较/复制,尽pipe现有需求:)