在 FORFILES 命令中添加空格的 REG ADD
REG ADD with spaces within FORFILES command
我正在尝试为我们使用的大量 EXE 文件自动设置应用程序兼容性标志。我可以使用 forfiles 命令毫无问题地提取所有 EXE 完整路径。问题是将该信息传递给带有 space 的 REG ADD 命令。我在这里错过了什么?我试过几组双引号和单引号,但没有任何效果。该命令的正确语法是什么?如果能像下图那样完成就好了。如果必须以不同的方式完成,那也没关系。
如有任何帮助,我们将不胜感激。
SET Key="HKLM\SOFTWARE\Microsoft\Window NT\CurrentVersion\AppCompatFlags\Layers"
SET Command="'REG ADD' "%KEY%" /v @PATH /t "REG_SZ" /d "RUNASADMIN""
forfiles /p D:\<DIR> /S /m *.exe -c "cmd %Command%"
试试
SET "Key=HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers"
for /r "d:\<dir>" %%a in ("*.exe") do (
reg add "%Key%" /t REG_SZ /v "%%~fa" /d RUNASADMIN
)
我正在尝试为我们使用的大量 EXE 文件自动设置应用程序兼容性标志。我可以使用 forfiles 命令毫无问题地提取所有 EXE 完整路径。问题是将该信息传递给带有 space 的 REG ADD 命令。我在这里错过了什么?我试过几组双引号和单引号,但没有任何效果。该命令的正确语法是什么?如果能像下图那样完成就好了。如果必须以不同的方式完成,那也没关系。
如有任何帮助,我们将不胜感激。
SET Key="HKLM\SOFTWARE\Microsoft\Window NT\CurrentVersion\AppCompatFlags\Layers"
SET Command="'REG ADD' "%KEY%" /v @PATH /t "REG_SZ" /d "RUNASADMIN""
forfiles /p D:\<DIR> /S /m *.exe -c "cmd %Command%"
试试
SET "Key=HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers"
for /r "d:\<dir>" %%a in ("*.exe") do (
reg add "%Key%" /t REG_SZ /v "%%~fa" /d RUNASADMIN
)