这是一个有趣的问题,所以请在这里耐心等待:
我有三个级别的嵌套文件夹,用于将文件同步到最终用户设备 - 第一级管理员具有权限,第二级最终用户具有(显式和个人)权限,第三级有内容(文件和通常更多的文件夹)。
当(偶尔)被移动到第三级的内容没有从它上面的文件夹继承权限时,就会出现问题 - 所以我们的用户最终会在他们的目录中获得他们没有权限的内容(因此,无法同步数据)。
为了解决这个问题,我正在尝试编写一个批处理脚本(按每日计划运行),该脚本深入到第三级文件夹并在那里重置 ACL 上的继承标志。重要的是,此脚本不会触及二级文件夹的权限(因为它将删除最终用户的显式权限)。
这是我正在使用的脚本(是的,它非常简单):
SET base=C:\testPrivate
SET subfolders=.\*
FOR /r %base% %%a in (.) do
(
icacls.exe %subfolders% /reset /t
)
exit /b
我目前正在尝试构建的脚本的问题是它重置了它正在处理的任何目录下所有内容(包括第二级)的权限。
是否有我可以使用的标志或变量获取 /r 标志的工作目录并将其提供给 %subfolders%,以便 icacls 仅处理第三级文件夹?