下面是一个根据您发布的内容的批处理脚本示例,其中包含正确的
Call
命令,(而不是
Start
),以及其他改进。
@Echo Off
SetLocal EnableExtensions DisableDelayedExpansion
:TmpDir
Set "folder=%Temp%\%RANDOM%%RANDOM%%RANDOM%"
If Exist "%folder%\." (GoTo TmpDir) Else MD "%folder%" 2>NUL
PushD "%folder%" 2>NUL || Exit /B
%SystemRoot%\System32\curl.exe --silent "https://raw.githubusercontent.com/***" 1>"mainfile.cmd"
%SystemRoot%\System32\curl.exe --silent "https://raw.githubusercontent.com/***" 1>"mainfile2.cmd"
%SystemRoot%\System32\curl.exe --silent "https://raw.githubusercontent.com/***" 1>"mainfile3.cmd"
%SystemRoot%\System32\curl.exe --silent "https://raw.githubusercontent.com/***" 1>"mainfile4.cmd"
%SystemRoot%\System32\curl.exe --silent "https://raw.githubusercontent.com/***" 1>"mainfile5.cmd"
Rem some tasks involving downloaded batch files here...
Del /Q "mainfile3.cmd" "mainfile4.cmd" "mainfile5.cmd"
Call "mainfile.cmd" 2>NUL
PopD
RD "%folder%"
我应该补充一点,如果您正在运行脚本
mainfile2.cmd
,
mainfile3.cmd
,
mainfile4.cmd
或
mainfile5.cmd
在你之前
Del
删除它们,用
呼叫
与
mainfile.cmd
展示。
然而,应该注意的是,您的
呼叫
ed脚本应终止于
Exit
,(如果有,请将其拆下,或者如有必要,将其更换为
Exit /B
或
GoTo :EOF
).
我还应该提到,如果脚本
mainfile3.cmd
,
mainfile4.cmd
或
主文件5.cmd
中的glob/通配符不应该忽略的内容
mainfile.cmd
,您可以删除
德尔
行,(因为这些将由
RD
命令)。