1

所以基本上我们有一个大型共享驱动器,其中包含许多顶级文件夹,每个文件夹都包含许多子文件夹和文件。

E:\Share\%Username%
E:\Share\%Username%\Folder1
E:\Share\%Username%\Folder2
E:\Share\%Username%\Folder2\Folder3

在这些文件夹中的每一个都是文件 - 现在基本上随着时间的推移权限已经失控,我想要做的基本上是绝对拥有顶层内的所有内容:

E:\Share\%username%\

但也要设置它,以便该文件夹中的任何内容都将从其父文件夹继承权限,因此:

E:\Share\%Username%\[Whatever is at this level and below] (whether files or folders)

继承自:

E:\Share\%username%\

这可以通过批处理脚本完成吗?

4

2 回答 2

5

以递归方式获取文件夹 E:\Share\%Username%\ 及其所有内容的所有权:

takeown /f "E:\Share\%Username%\" /r
于 2013-03-13T23:55:43.780 回答
3

真的没有理由在这里重新发明轮子,您可以在 Windows 7 中从 cmd 提示符或从 PS 使用 icacls,它是一个单一的衬垫,可以取得所有权并具有内置递归。

你真正要做的是: 取得所有权(大多数时候是可选的) 设置继承 递归应用。

http://ss64.com/nt/icacls.html

如果您使用的是 XP / 2003,则可以使用 xcacls。

于 2013-03-14T00:36:38.957 回答