본문 바로가기

OS-서버/윈도우

cmd IF - ELSE문

반응형

< IF-ELSE문 형식 >

 

IF 조건 ( 

문장 ) ELSE IF 조건 ( 

문장 ) ELSE ( 

문장 )



IF 조건 ( 문장 ) 처럼 한 줄에 괄호를 모두 쓰지말고 위와 같은 형식을 지키자.



예시) IF %A% == 1 echo "hi!" 

  A가 1이면 "hi"가 출력된다.



<대소비교 유형>

A LSS B  = A < B 

A B보다 작다

 

A LEQ B  = A <= B

A B보다 작거나 같다

 

A GTR B  = A > B

A B보다 크다

 

A GEQ B  = A >= B

A B보다 크거나 같다

 

 

 

 

<Score.bat>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
@echo off
 
:INPUT
 
set /p score= 당신의 점수는요? 
 
if %score% GEQ 90 (
echo "Lank:A" 
else if %score% GEQ 80 (
echo "Lank:B" 
else if %score% GEQ 70 (
echo "Lank:C " 
else if %score% GEQ 60 (
echo "Lank:D" 
else ( echo "Lank:F" )
 
echo "score [%score%]"
 
set /p que=점수를 다시 입력받겠습니까?(y OR any) 
 
if "%que%" equ "y" (goto INPUT)
 
exit
cs

 

 

<프로그램 로직>

사용자로부터 점수를 입력받는다.

 

만약 

점수가 90점 이상이면 랭크 A

80~89점이상 B , 70~79 점이상 C ,

60~69 D , 해당사항이 없을 때는 F를 출력한다.

 

점수를 입력받고 나서 재입력받겠냐고 물어본다.

 

사용자가 y를 입력했을 때 INPUT으로 분기하고 

그 외의 값을 입력했을 때 프로그램을 종료한다.

 

참고로 대소비교를 할 때 정수형타입과 문자형타입을 잘 구분해줘야 한다.

쌍따옴표("")로 묶으면 문자형으로 인식하게 된다.

 

 

 

 

<File_exist.bat>

1
2
3
4
5
6
7
8
9
@echo off
 
set /p file_name=파일 이름 : 
 
if not exist %file_name% (
 echo "파일이 존재하지 않습니다." 
else  ( echo "파일이 존재합니다."  )
 
pause > nul
cs

 

 

<프로그램 로직>

※ 파일이 존재하는지 확인하는 명령 exist

    부정을 뜻하는 명령 not 


 

사용자로부터 파일 이름을 입력받는다.

 
해당 파일의 존재 여부에 따라 echo 한다. 
 

 

파일이 다른 경로에 있을 때는 경로를 직접 적어준다.
 
> 파일이름 : C:\abcd1234.txt
 

 

반응형

'OS-서버 > 윈도우' 카테고리의 다른 글

윈도우 캐시 메모리에 남아있는 dns 정보 삭제  (0) 2017.07.05
cmd ( && , | ) ( type , findstr )  (0) 2017.06.29
환경변수 path 설정  (2) 2017.06.22
cmd 변수 지정 명령어 SET  (0) 2017.06.22
cmd FOR - GOTO  (0) 2017.06.21