递归列出所有文件权限* nix / Windows / Solaris

时间:2010-08-04 22:09:19

标签: permissions reporting

我知道这在技术上是一个3部分的问题,但它都是一脉相承的。我需要一种方法来生成一个报告,很可能是基于文本的,它将显示树中所有目录和文件的所有文件权限。树的深度为X,我说X因为这棵树可能会生长。无论我有一个* nix实现的开始,但它肯定缺乏。

* nix

  

ll * / * / * / *> perms.txt

基于我需要重复此次的次数,这当然是非常可怕的,但它会产生我想要的结果。我想Solaris会看起来很相似,Windows我不确定会发生什么。非常感谢任何帮助。

3 个答案:

答案 0 :(得分:8)

递归ls是否足够?

ls -lR

另一个不错的选择是tree,它有很好的输出。

tree -p

答案 1 :(得分:3)

在Windows上使用SetACL获取完整列表,如下所示:

SetACL.exe -on "path" -ot file -actn list -lst "f:tab;w:d,o" -rec cont_obj

以表格(=人类可读)格式创建权限列表,包括所有者和DACL,递归所有子容器和子对象。

答案 2 :(得分:1)

对于Windows,有CACLS,但它不会自动递归到列表ACL。这是一个VBScript,它将为您完成这一部分:http://www.codeproject.com/KB/vbscript/VBScript_ACL_Crawl.aspx

在Linux上,使用ls -lRire_and_curses可能最简单(也是最便携)。