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

Permissions 递归列出所有文件权限*nix/Windows/Solaris,permissions,reporting,Permissions,Reporting,我知道从技术上讲,这是一个由三部分组成的问题,但所有问题的思路都是一样的。我需要一种生成报告的方法,很可能是基于文本的,该报告将显示树中所有目录和文件的所有文件权限。这棵树的深度是X,我说X是因为这棵树可能会生长。无论如何,我有一个*nix实现的开始,但它肯定是缺乏的 *尼克斯 ll*/*/*/*>perms.txt 这当然是相当可怕的,根据我需要重复的次数,但它确实产生了我想要的结果。我想Solaris看起来会很像Windows,但我不知道会发生什么。非常感谢您的帮助。递归ls就足够了吗 ls

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

*尼克斯

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


这当然是相当可怕的,根据我需要重复的次数,但它确实产生了我想要的结果。我想Solaris看起来会很像Windows,但我不知道会发生什么。非常感谢您的帮助。

递归
ls
就足够了吗

ls -lR
另一个好的选择是,它有很好的输出

tree -p

对于Windows,有CACL,但不会自动递归列出ACL。下面是一个VBScript,它将为您完成这一部分:

在Linux上,使用ls-lR可能是最简单的(也是最可移植的),正如所说。

在Windows上,使用ls-lR可以获得如下完整列表:

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

这将创建一个以表格形式(=人类可读)的权限列表,包括所有者和DACL,并在所有子容器和子对象上递归。

谢谢您,这在*nix和最有可能的Solaris上已经足够了。对Windows有什么建议吗?对不起,我不知道Windows的任何有用的东西。你只知道Windows的一些无用的东西吗?:-)您将希望使用
ls-lAR
而不是
ls-lR
,这样以点开头的文件名就不会被隐藏(.and..stay hidden)。@Vinko Vrsalovic-或者我不知道Windows有什么用处?;)说实话,我对Windows几乎一无所知,不管是有用的还是其他的…直接从作者那里!您已经创建了一个非常有用的工具。非常感谢。