본문 바로가기

윈도우/윈도우이야기

[BAT] 배치파일 명령어 알아보기 2

이번 포스팅은 저번 포스팅에 이어 배치파일에서 쓰이는 IF문에 대해 알아보겠습니다.

일반적인 IF문은 6가지의 조건을 설정할 수 있는데, 이는 다음과 같습니다.

  1. IF EXIST 파일명 명령어
  2. IF NOT EXIST 파일명 명령어
  3. IF String1==String2 명령어
  4. IF NOT String1==String2 명령어
  5. IF ERRORLEVEL 값 명령어
  6. IF NOT ERRORLEVEL 값 명령어

IF EXIST는 조건에 해당하는 파일이나 변수에 입력된 값이 존재할 경우 다음에 오는 명령어를 수행하라는 조건문입니다.

if exist X:\test.txt start X:\success.bat

이 문장은 X:\test.txt가 파일이 존재할 때 X:\success.bat 프로그램을 실행하라는 명령어입니다.

IF NOT EXIST 조건은 위와 반대로 조건문이 거짓일 때 뒤의 내용을 실행하는 형태입니다.

if not exist x:\test_1.txt start x:\fail.bat

이 문장은 x:\text_1.txt 파일이 없을 때 x:\fail.bat을 실행하라는 의미입니다.

if string1==string2 명령어 조건은 문자열이나 문자 하나를 변수로 입력 받을 경우, 배치 파일로 미리 설정된 값과 비교하고 같을 경우 명령어를 실행하게 됩니다.

여기서 %1과 root에 씌워준 ""는 cmd창에서 파라미터를 부여하지 않게될 때에도 빈 문자열을 주게 되어 '지정되지 않은 에러' 메세지를 안 띄울 수 있습니다.

if not string1==string2 명령어 조건은 앞의 경우와 반대로 일치하지 않을 경우 명령어를 실행합니다.

 

if errorlevel value 명령어와 if not errorlevel value 명령어 조건은 쉽게말해 return되는 값에 따라 동작합니다.

아직 errorlevel을 다루지 않았기 때문에 이후에 다시 한번 업데이트 하겠습니다.

 

[이 글은 인제대학교 의용공학부 네트워크 팀 '11 신윤호가 작성하였습니다.]

http://brian-s.tistory.com/46