使用bat低吗满足如下需求: 1、监测notepad.exe进程是否运行,若运行则等待10分钟; 2、在10分钟以内有人操作则等待10分钟; 3、若在10分钟以内没有人操作则终止notepad.exe
时间: 2024-03-20 19:43:11 浏览: 17
使用bat脚本可以满足这个需求。以下是一个示例代码:
```
@echo off
setlocal enabledelayedexpansion
set EXE=notepad.exe
set WAIT_TIME=600
:LOOP
tasklist /FI "IMAGENAME eq %EXE%" /FI "STATUS eq running" | find /i "%EXE%" > nul
if %errorlevel% equ 0 (
echo %EXE% is running, waiting for %WAIT_TIME% seconds...
set /a "COUNTDOWN=%WAIT_TIME%"
:COUNTDOWN
timeout /t 1 /nobreak > nul
set /a "COUNTDOWN-=1"
tasklist /FI "IMAGENAME eq %EXE%" /FI "STATUS eq running" | find /i "%EXE%" > nul
if %errorlevel% equ 0 (
if !COUNTDOWN! gtr 0 (
echo %COUNTDOWN% seconds remaining...
goto COUNTDOWN
) else (
echo %EXE% has been running for too long, terminating...
taskkill /f /im %EXE%
goto END
)
) else (
echo %EXE% has been terminated.
goto END
)
) else (
echo %EXE% is not running, waiting for it to start...
timeout /t 5 > nul
goto LOOP
)
:END
```
这个脚本会不断地检查notepad.exe是否在运行中。如果它在运行中,脚本会等待指定的时间(这里是10分钟),直到有人操作它或者时间到了。如果时间到了但是没有人操作notepad.exe,脚本会终止该进程。如果notepad.exe没有在运行中,脚本会等待5秒钟然后重新开始检查。