由于WINDOWS DEFENDER的问题,我需要执行以下操作:
for /r "%appdata%\..\Local\MyProg\2.0" %D IN ("*MyProgram.exe") DO "%~fD
它在COMMAND PROMPT中工作得很好,但在批处理文件或cmd文件中却没有 - 为什么?
如何将可摘文件作为批处理文件或“.cmd”?
答案 0 :(得分:0)
在批处理文件中运行for
循环时,您需要在预定义变量中使用额外的%
。所以它应该是:
for /r "%appdata%\..\Local\MyProg\2.0" %%D IN ("*MyProgram.exe") DO "%%~fD
我建议您通过从cmdline运行for /?
来使用详细记录的帮助进行阅读。保证会受益于你!
答案 1 :(得分:0)
递归For
循环已经返回完整路径,另外还有路径%AppData%\..\Local
的系统变量。
For /R "%LocalAppData%\MyProg\2.0" %%A In ("*MyProgram.exe") Do "%%A"
根据您的需要,可能值得查看Start
命令用法Start /?
。您可能会发现Do Start "" "%%A"
就是您所需要的。