我创建一个.bat文件,它将运行四个脚本,我想要做的是在前三个脚本完成后,然后启动最后一个脚本,我该怎么做?
start MSSQL2PostgreSQLPro_Cons.exe /Session:"Yardi-brian"
timeout /t 120
start MSSQL2PostgreSQLPro_Cons.exe /Session:"Yardi-lake"
timeout /t 120
start MSSQL2PostgreSQLPro_Cons.exe /Session:"Yardi quan"
C:\Python27\python.exe C:\yardi_backup\detect.py
答案 0 :(得分:0)
您可以使用/WAIT
的{{1}}开关,甚至START
来停止每次都创建新的/B
窗口:
cmd.exe
要获得更多选项,请运行start /B /wait timeout /t 1
start /B /wait timeout /t 1
start /B /wait timeout /t 1
。 :)
如果您不想等待每个MSSQL程序,那么除非您想要检查具有此名称的进程是否仍在某处(可能与进程冲突),否则不会对您有所帮助你没有跑步) - this answer解释了如何。
一个小例子:
START /?
运行此示例,观察关闭所有@echo off
start notepad
start notepad
start notepad
:check
tasklist /FI "IMAGENAME eq notepad.exe" 2>NUL | find /I /N "notepad.exe">NUL
if "%ERRORLEVEL%"=="1" (
echo Program is not running
) else (
goto check
)
窗口时会发生什么。