我正在创建一个批处理文件(我们称之为Create.bat),它将创建一个批处理文件(让我们称之为Created.bat),它将在其中插入多个命令。
其中一个命令如下:
FOR /F %%x IN ('tasklist /NH /FI "IMAGENAME eq %TEST%"') DO IF %%%x == %TEST% goto ProgramON
但是当我在运行Create.bat后打开Created.bat进行编辑时,我看到插入了以下代码:
FOR /F %%x == %TEST% goto ProgramON
为什么它会删除部分代码,我该如何解决?
答案 0 :(得分:1)
某些角色必须转义。其中大多数(&<>|
)带有插入符号(^
)。百分号通过另一个百分号转义:
>>created.bat echo DIR ^>nul
>>created.bat echo FOR /F %%%%x IN ('tasklist /NH /FI "IMAGENAME eq %%TEST%%"') DO IF %%%%x == %%TEST%% goto ProgramON