出于某种原因,我需要在我的批处理文件中从一个字符串执行多个命令。我试过这段代码:
@echo off
set multipleCommands=echo command1 ^& echo command2 ^& echo command3
echo.
%multipleCommands%
pause
但它给了我这个结果:
command1 & echo command2 & echo command3
我还尝试了另一个代码:
@echo off
set multipleCommands=echo command1 & echo command2 & echo command3
echo.
%multipleCommands%
pause
但是它给了我这个结果(仅因为multipleCommands=echo command1
):
command2
command3
command1
如何解决这个问题?
答案 0 :(得分:1)
首先没有理由,&
的行为方式与新行上的另一个命令相同。
@Echo Off
Echo=
command1
command2
command3
Pause
然而,你的问题似乎是你在使用echo时感到厌恶!
@Echo Off
Set "multipleCommands=command1 & command2 & command3"
Echo=
%multipleCommands%
Pause
您需要了解每个命令都会在前一个命令关闭后打开。如果您希望它们在您需要使用的同时运行:
Set "multipleCommands=start command1 & start command2 & start command3"