Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.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 从批处理文件返回控件_Batch File_Dos_Xcopy - Fatal编程技术网

Batch file 从批处理文件返回控件

Batch file 从批处理文件返回控件,batch-file,dos,xcopy,Batch File,Dos,Xcopy,我有一个批处理文件,其中包含以下几个命令: XCOPY DEL RMDIR anotherBatch.bat XCOPY DEL RMDIR 如您所见,在这两者之间有一个对另一个批处理文件(anotherBatch.bat)的调用,该文件执行其他一些处理 现在我的问题是,在执行另一个批处理之后,控件永远不会返回到原始批处理文件,它就在那里结束 如何确保控件返回?您应该显式调用另一个批处理文件 call anotherBatch.bat 批处理子例程是另一个批处理文件,通过调用命令

我有一个批处理文件,其中包含以下几个命令:

XCOPY 
DEL 
RMDIR

anotherBatch.bat

XCOPY 
DEL 
RMDIR
如您所见,在这两者之间有一个对另一个批处理文件(anotherBatch.bat)的调用,该文件执行其他一些处理

现在我的问题是,在执行另一个批处理之后,控件永远不会返回到原始批处理文件,它就在那里结束


如何确保控件返回?

您应该显式调用另一个批处理文件

call anotherBatch.bat
批处理子例程是另一个批处理文件,通过调用命令调用:

CALL subroutineName Param1 Param2
子例程可以放在调用代码的同一文件中。在其名称前加冒号表示:

CALL :SubroutineInThisFile Param1 Param2
. . . .
. . . .
. . . .
EXIT /B

:SubroutineInThisFile
. . .
EXIT /B

:AnotherSubroutine
. . .
EXIT /B
EXIT/B命令(不仅仅是EXIT)用于在同一文件中标记子程序结束;主程序也必须这样做


如果在没有调用命令的情况下调用另一个批处理文件,如您的示例中所示,则净结果类似于“转到另一个文件”:当调用的文件结束时,流程在该点结束。我以前用这种方式调用批处理文件“Overlay”(而不是“subroutine”)。

Thx很多…是否可以像params一样调用其他变量,使另一批在新窗口中打开,并在完成后自动关闭。。。