【发布时间】:2016-10-19 09:08:04
【问题描述】:
我想知道如何使用 cmd 获取文件夹的可能权限?
我会尝试更多地解释我的需求,以便您理解我的问题:
我正在使用 icacls 更改 MyFolder 上的 ACL。
我正在使用这样的命令:
icacls "%ProgramFiles(x86)%\MyFolder" /grant:r Administrators:F
或
icacls "%ProgramFiles(x86)%\MyFolder" /grant:r Users:(OI)(CI)F /t /c
问题是,如果我在法国计算机上运行它,它会给我一个类似的认可错误:“此工作站和主域之间的信任关系失败”......
在进行了一些测试后,我了解到问题在于我使用的是管理员并且我必须使用管理员(在法语 Windows 上运行我的脚本时)。
“用户”也是如此,我应该在命令中使用“Utilisateurs”而不是“用户”,这样它才能正常工作。
我需要知道windows是否使用了一个变量来帮助我进行本地化,使用cmd自动获取角色,用这个变量替换“Administrators”,“Users”,这样我的代码就可以工作了任何 Windows 无论是什么语言...
我需要的是这样的:
icacls "%ProgramFiles(x86)%\MyFolder" /grant:r %Admin%:F
icacls "%ProgramFiles(x86)%\MyFolder" /grant:r %Users%:F
这样 %Admin% 将在英语计算机上由管理员自动替换,在法语计算机上由管理员自动替换,依此类推。
我实际使用的完整语法是:
icacls "%ProgramFiles(x86)%\MYFOLDER" /grant:r Administrators:F /grant:r SYSTEM:F /grant Users:(OI)(CI)F /t /c
【问题讨论】:
标签: batch-file cmd scripting localization acl