7월 5일자로 배치파일 내용을 수정하였습니다.

기존 파일은 스크립트 작성 예시로 사용했던 메모장이 스크립트 진행을 홀드하는 역할을 하더라고요.

그래서 다중 실행 프로그램에서는 제 역할을 하지 못했습니다.

 

이번 스크립트는 프로그램 실행 여부를 확인하는 OS의 인터럽트를 이용했기 때문에 보다 정확할 겁니다.

단, 인터럽트가 변경되어도 (프로그램이 죽은 걸 확인해도) 재시작 시그널을 보내는데 10초 정도 걸립니다.

그래서 굳이 Timeout=2는 변경하지 않으셔도 될 듯 합니다.

 

아래 내용에서 마찬가지로 감시하고자 하는 프로세스 이름을 find 뒤의 " " 사이에 적어주시면 되고요.

실행하고자 하는 프로그램은 start iexplore.exe 위치에 적으시면 됩니다.

단, 배치 파일의 경우 Call 파일이름.bat  처럼  적어야 제대로 동작합니다.

 

*배치 파일 실행하면 도스프롬프트에 아무 것도 안 나오는데, 답답한 분들은 Timeout=2 뒷부분인 '> NUL'을 지우시면 됩니다.

 

 

------------

@echo off

:repeat
Timeout 2 > NUL

 

@tasklist | find "iexplore.exe" /c > NUL
IF %ErrorLevel%==1 goto 1
IF NOT %ErrorLevel%==1 goto 0

 

:0
goto repeat

 

:1
start iexplore.exe
goto repeat
 

-----------------

 

예제는 2초마다 프로세스를 검사해서  인터넷 익스플로러가 실행 중인지를 확인하고, 실행이 안되어 있으면 프로그램을 실행하는 배치입니다.   여기서 find 뒤의 iexplorer.exe 대신 원하는(감시하려는) 프로세스 이름을 적으면 되는데요. 

도스프롬프트에서 tasklist 명령을 하면 알 수 있습니다.

 

 

 

출처 : www.ddengle.com/mining/2310956

+ Recent posts