我正在尝试设置一个执行bat文件的任务,该文件将启动一堆进程(如果尚未运行)。我找到了一些例子并尝试将它放在一起,但它似乎不起作用。我想在Windows 2008服务器上进行设置,这些都是visual studio 2010 vb.net应用程序。
@echo off
:start
set /p runningprocess="C:\Users...Debug\PROCESS_I.exe"
tasklist /FI "IMAGENAME eq %runningprocess%" | find /I "%runningprocess%" > nul
IF %ERRORLEVEL% equ 0 ECHO PROCESS_? is running
IF %ERRORLEVEL% equ 1 ECHO PROCESS_? is not running
pause>nul
goto start
exit
如何使其适应以运行多个流程:
set /p runningprocess="C:\Users...Debug\PROCESS_II.exe"
set /p runningprocess="C:\Users...Debug\PROCESS_III.exe"
任务应该能够每隔1或2小时启动一次,以检查进程是否已在运行,如果没有启动新进程。这是我的备份计划,用于确保在发生某些故障时我的进程将始终运行,我可以通过每个应用程序内的电子邮件发出警报。
任何想法都赞赏。
编辑:刚刚检查了上次运行结果的任务计划,并显示“目录名称无效” 这是在程序/脚本中:
"C:\Users\...\BatchProcesses\PTTrackProcesses.bat"
,这是在
开始C:\Users\...\BatchProcesses\
手动运行时出现错误
C:\Users\..Debug\PROCESS_I.exe
ERROR: The search filter cannot be recognized.
PROCESS is not running
答案 0 :(得分:0)