自动绕过 cacls 确认提示?

自动绕过 cacls 确认提示?

我正在编写一个适用于 Windows 的自定义设置脚本,该脚本将自动执行我想要在新的 Windows 机器或安装上执行的特定设置。我授予cacls脚本中某些文件夹的访问权限,但Y/N对于每个列出的项目,系统都会提示我。我想通过自动对我指定的每个文件夹或文件说“是”来绕过这个问题。我知道这样做的风险,到目前为止还没有遇到任何问题。下面是我的脚本中的一个目录的示例:

cacls "%PROGRAMFILES%\WindowsApps" /grant Administrators:f

答案1

每项内容都会提示我“Y/N”

我想通过自动对每个问题说“是”来绕过这个问题

您可以Y通过管道cacls传输echo

echo Y| cacls "%PROGRAMFILES%\WindowsApps" /grant Administrators:f

CACLS命令不提供/Y自动回答'Y'提示的开关Y/N。但是,您可以使用将'Y'字符导入命令中,使用以下语法:CACLSECHO

ECHO Y| CACLS filename /g username:permission

来源Cacls - 修改访问控制列表 - Windows CMD - SS64.com

删除管道前的空格以修复命令

答案2

使用以下语法:

echo y| cacls.exe [options]...

请注意,命令行需要与上面完全一致,包括空格(请参阅关联)。

答案3

切换到icacls 实用程序(内置于 Windows),没有此提示。

答案4

关于最佳答案的一个简短说明,需要删除管道前的空间

Y| 作品

Y | 不起作用

相关内容