目前我正在处理批处理文件,以便在执行批处理文件时授予或拒绝所有用户的权限。
我面临的问题是我正在处理的命令提供“Failed Processing 1 files
的输出以下是我正在处理的代码
set locationfolder=C:\Users\Troy\Desktop\Log Folder
icacls "%locationfolder%" /deny Everyone:F /T
所以这是我得到的输出,
processed file: C:\Users\Users\Troy\Desktop\Log Folder
C:\Users\Users\Troy\Desktop\Log Folder\*: Access is denied
Successfully processed 1 files; Failed processing 1 files
现在文件夹的子文件夹和子文件如下
日志文件夹
现在日志文件夹1包含以下子文件夹
日志文件夹1
日志文件夹2 包含以下子文件夹
最后日志文件夹3 包含以下子文件夹和子文件
现在,我想根据批处理文件的执行情况向所有用户授予或拒绝对上述特定路径及其所有子文件和子文件夹的权限。但是只有基础文件夹即。 C:\ Users \ Troy \ Desktop \ Log Folder保留拒绝权限,而如果直接接近,则可以轻松访问所有子文件夹。
例如,如果我输入Windows文件资源管理器的位置栏为
C:\ Users \ Users \ Troy \ Desktop \ Log Folder,它给我Access is Denied
错误。这是我的期望。
但是,如果我输入C:\ Users \ Users \ Troy \ Desktop \ Log Folder \ Log Folder 1 \ Log Folder 2,它允许我浏览子文件夹的内容。
从我可以从上面代码的输出中推断出来,即
C:\Users\Users\Troy\Desktop\Log Folder\*: Access is denied
这可能意味着拒绝访问* ie。对于所有子文件夹和子文件,结果是他们不拒绝权限。
我也试过这段代码,但结果却相同
icacls "%locationfolder%" /deny "Everyone":(OI)(CI)F /T
我也尝试过其他目录,并且还在管理员模式下运行CMD,但都是徒劳的。
另外,如果我使用/ grant开关使用相同的代码,它会按预期工作。即,
icacls "%locationfolder%" /grant Everyone:F /T
返回以下输出。
Successfully processed 7 files; Failed processing 0 files
因此无论问题出现在/拒绝切换。
请帮忙。