Tuesday, November 21, 2006
DOS 배치파일] IF ELSE 문 사용법 예제; 도스 BAT 강좌
윈도우2000/윈도우XP와 그 이상의 운영체제(OS)에서는 배치파일 문법에서,
기본적인 IF문 외에, "IF ELSE 문"도 사용할 수 있습니다. 다음 예제와 같습니다:
파일명: 0.bat
실행 결과:
(현재 디렉토리에 test.txt 라는 파일이 있는 경우에 실행했을 때와
test.txt 파일을 지운 후에 실행했을 때의 경웁니다.)
"파일의 존재 여부를 체크"하는 배치파일인데, (1)번 예제에서는 IF ELSE 문으로 깔끔하게 처리되었습니다.
(2)번 예제는 전통적인 DOS 배치 파일의 IF문으로 같은 작업을 하는 것인데, IF문을 두 번 사용해야 하는 불편함이 있습니다.
그렇지만 배치 파일의 IF ELSE 문은, 일반 프로그래밍 언어의 그것과는 달리 그리 완벽하지 못하고 엉성한 면이 있습니다. 좀 복잡한 작업을 하려고 하면 이상한 에러가 나는 경우가 종종 있었습니다.
IF ELSE 문에 대한 도움말은 도스창(명령 프롬프트;cmd.exe)에서,
if /?
라고 입력하면 출력됩니다.
▶▶ 배치파일(.BAT) IF 조건문 사용법 기초 강좌; DOS Batch File IF
기본적인 IF문 외에, "IF ELSE 문"도 사용할 수 있습니다. 다음 예제와 같습니다:
BAT 예제: IF ELSE 조건문
파일명: 0.bat
@echo off
setlocal
set foo=test.txt
::(1번 예제)::::::::::::::::::::::::::::::::::::::::::::
if exist %foo% (
echo %foo% 라는 파일이 존재하는군요
) else (
echo %foo% 라는 파일이 없군요
)
::(2번 예제)::::::::::::::::::::::::::::::::::::::::::::
if exist %foo% echo %foo% 라는 파일이 존재하는군요
if not exist %foo% echo %foo% 라는 파일이 없군요
setlocal
set foo=test.txt
::(1번 예제)::::::::::::::::::::::::::::::::::::::::::::
if exist %foo% (
echo %foo% 라는 파일이 존재하는군요
) else (
echo %foo% 라는 파일이 없군요
)
::(2번 예제)::::::::::::::::::::::::::::::::::::::::::::
if exist %foo% echo %foo% 라는 파일이 존재하는군요
if not exist %foo% echo %foo% 라는 파일이 없군요
실행 결과:
(현재 디렉토리에 test.txt 라는 파일이 있는 경우에 실행했을 때와
test.txt 파일을 지운 후에 실행했을 때의 경웁니다.)
D:\Z>0.bat
test.txt 라는 파일이 존재하는군요
test.txt 라는 파일이 존재하는군요
D:\Z>
D:\Z>
D:\Z>
D:\Z>0.bat
test.txt 라는 파일이 없군요
test.txt 라는 파일이 없군요
D:\Z>
test.txt 라는 파일이 존재하는군요
test.txt 라는 파일이 존재하는군요
D:\Z>
D:\Z>
D:\Z>
D:\Z>0.bat
test.txt 라는 파일이 없군요
test.txt 라는 파일이 없군요
D:\Z>
"파일의 존재 여부를 체크"하는 배치파일인데, (1)번 예제에서는 IF ELSE 문으로 깔끔하게 처리되었습니다.
(2)번 예제는 전통적인 DOS 배치 파일의 IF문으로 같은 작업을 하는 것인데, IF문을 두 번 사용해야 하는 불편함이 있습니다.
그렇지만 배치 파일의 IF ELSE 문은, 일반 프로그래밍 언어의 그것과는 달리 그리 완벽하지 못하고 엉성한 면이 있습니다. 좀 복잡한 작업을 하려고 하면 이상한 에러가 나는 경우가 종종 있었습니다.
IF ELSE 문에 대한 도움말은 도스창(명령 프롬프트;cmd.exe)에서,
if /?
라고 입력하면 출력됩니다.
▶▶ 배치파일(.BAT) IF 조건문 사용법 기초 강좌; DOS Batch File IF
tag: batch
배치파일 | DOS CMD BATCH .BAT | VBScript .VBS
<< Home