Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 使Start命令在批处理文件中工作_Batch File - Fatal编程技术网

Batch file 使Start命令在批处理文件中工作

Batch file 使Start命令在批处理文件中工作,batch-file,Batch File,我有以下内容,但当我执行时,我发现FOR循环似乎从未运行过——有趣的是,FOR循环之后的Start语句将执行。我有点困惑 Start "Starting up Master Node" /D "c:\mydir" cmd /k "Master.exe" FOR /L %%i in (1,1,%SlaveNodes%) DO (call slavenode.bat %%i %mycores%) 以下是您的批处理流程: Start "Starting up Master Node" /D "c:

我有以下内容,但当我执行时,我发现FOR循环似乎从未运行过——有趣的是,FOR循环之后的Start语句将执行。我有点困惑

Start "Starting up Master Node" /D "c:\mydir" cmd /k "Master.exe"
FOR /L %%i in (1,1,%SlaveNodes%) DO (call slavenode.bat  %%i %mycores%)

以下是您的批处理流程:

Start "Starting up Master Node" /D "c:\mydir" cmd /k "Master.exe"
此命令将启动另一个进程(初始进程除外)以运行
cmd/K Master.exe

因此,在这个新过程中,
Master.exe
被执行,
/K
窗口保持打开状态

同时,原来的过程继续进行

FOR /L %%i in (1,1,%SlaveNodes%) DO (call slavenode.bat  %%i %mycores%)
执行
slavenode.bat
%SlaveNodes%
次(在原始流程中)

然后,终止。若原始流程是从非持久性方法(例如,从资源管理器)启动的,则原始流程窗口(若有)将消失


如果您希望
Master.exe
slavenode.bat
中查看某些内容,请记住,由于它是在新进程中启动的,执行前的此开销可能比所有从进程运行的时间更长。

OK。我需要与Loop命令并行运行初始Start命令。因此,如果我循环4次,我希望打开5个窗口,因为我在slavenode.bat文件中有一个Start命令。然而,这似乎没有发生。MasterNode将永远不会返回并无限期运行。但是,我从未看到执行FOR循环。是否
%SlaveNodes%==5
?您的文件名是
cmd
还是任何其他冲突的命令名?