我正在尝试在程序中执行以下行:
QString cmd;
cmd = for /f "tokens=2,3 delims==" %%a in (temp3.txt) do (echo %%a >> list.txt) ; // how?
当我使用以下转义时
cmd = "for /f \"tokens=2,3 delims==\" %%a in (temp3.txt) do (echo %%a >> list.txt)";
我收到%%a not expected at this time
错误消息。
通过复制粘贴到.bat文件中仅运行此行就可以完成这项工作。
我该如何解决这个问题?
答案 0 :(得分:1)
在这两个地方将其从%%a
更改为%a
。您只需要在bat文件中双重转义变量。
如果将该行粘贴到裸cmd提示符中,您将看到相同的错误。将其更改为%a
应该在cmd提示符中以及程序中修复它。