본문 바로가기
조회 수 6223 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print

http://blog.naver.com/PostView.nhn?blogId=5bpa&logNo=130124105539&categoryNo=0&parentCategoryNo=0&viewDate=&currentPage=4&postListTopCurrentPage=1&userTopListOpen=true&userTopListCount=5&userTopListManageOpen=false&userTopListCurrentPage=4




 
코드

set /a i=0

:start

tasklist /NH | find -I "my_app.exe"

if %errorlevel% neq 0 ( 

start my_app.exe

set /a i=i+1

)

ping -n 5 127.0.0.1>NUL

echo "**************************"

echo %i%

goto :start

 


여기서 여러가지 시사점이 있는데요. 


set /a i=0

set /a i=i+1

이건 몇 번 수행했는지 보기 위해서 쓴 겁니다. "set /a" 를 해야 변수에 저장이 되는가 봅니다. 


그리고 실제로 변수를 보기 위해서는 % 를 양쪽에 씁니다. 

echo %i%


tasklist 는 리눅스의 ps 와 비슷합니다. 

저렇게 쓰면, my_app.exe 이 실행 중인지 보겠다는 거지요.

만약 없다면, errorlevel 에 0 이 할당됩니다. 에러라는 거죠. 


0 이 아니면, my_app.exe 을 수행합니다. 

start my_app.exe 

과 같이 start를 써줘야 하네요. 


그리고 if 문 안에 여러 문장을 쓰려면, 괄호 ( ) 를 씁니다. 

리눅스에선 중괄호 { } 를 쓰는데 이렇게 다르네요. 


그리고 잠시 쉬고 다시 체크하기 위해서 pause 나 sleep 을 하고 싶은데,

윈도우에는 그런게 없어서 꼼수를 씁니다. (요즘 유행인 꼼수)

ping -n 5 127.0.0.1>NUL

5초동안 쉰다는 거죠. ping 이 보통 1초에 하나씩 하는데, 5번 보내면서 쉰다는 의미입니다. 


예전 꼬맹이때, autoexec.bat를 만져본 이후 20년이 다 되어 갑니다. 

아직도 윈도우에 스크립트가 있다는 게 놀랍네요. :)

그러나 우리 같이 시스템 엔지니어들에게는 스크립트가 시간을 절약해주는 단비 같은 존재입니다. 



참조: 

http://www.dostips.com/DtTipsArithmetic.php#Arithmetic.Integer

http://www.roysac.com/blog/2009/10/some-handy-ms-dos-batch-tricks-infinite-loop-and-wait-command/

http://www.computerhope.com/forum/index.php?topic=72248.0


Title
List of Articles
번호 제목 글쓴이 날짜 조회 수
97 Convert OpenSSH private key to .ppk for Putty and Winscp file Hojung 2014.11.25 2417
96 MBR vs GPT 디스크 형식 file Hojung 2014.11.12 3387
95 Windows XP에서 자동 로그온을 설정하는 방법 Hojung 2013.04.08 3130
94 Enable Ping in Windows 7 Firewall file Hojung 2013.04.01 3388
93 How to tell if your computer is joined to an Active Directory file Hojung 2013.02.05 4707
92 How to Create Bootable Windows 8 USB Drive from ISO Image Hojung 2012.11.23 3334
91 Windows 7에서 자동 로그인 설정하기 file Hojung 2012.10.15 3144
90 How to Run a Program as an Administrator in Windows 7 Hojung 2012.05.14 3382
» 원하는 프로그램을 무한정 반복 실행하는 스크립트 Hojung 2012.02.25 6223
88 Using Apache User Authentication in XP (.htpasswd) Hojung 2011.12.18 4712
87 How to Install Ubuntu Linux on Galaxy Tab 10.1 Hojung 2011.11.20 6182
86 Galaxy Tab 10.1 (SHW-M380W) – Root / Busybox / RAM Optimization Hojung 2011.11.20 10112
85 Reset Galaxy Tab 10.1 to factory default with image Hojung 2011.11.20 5503
84 mp3tag를 이용한 음악파일 정보정정 및 ipad/iphone 복사 file Hojung 2011.11.16 5532
83 Windows7에서 Photoship CS3 설치 후 '식별되지 않은 네트워크'로 인해 인터넷 불가시 file Hojung 2011.11.12 9495
82 Windows 7에 Home 에디션에 언어팩 설치하기 Hojung 2011.07.26 9460
81 윈도우 7 설치시 시스템 예약 파티션 만들지 않기 Hojung 2011.07.25 9016
80 Win7 language Pack Download for 32 & 64-bit Hojung 2011.07.14 8172
79 How to Create a Bootable Windows 7 USB file Hojung 2011.06.28 8913
78 XP에서 재부팅 바로가기 file Hojung 2011.06.14 8109
Board Pagination ‹ Prev 1 2 3 4 5 Next ›
/ 5

Designed by sketchbooks.co.kr / sketchbook5 board skin

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5