강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

레벨243-1 : 쉘프로그램내에서 사용되는 if문의 사용방법과 실 사용 예

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

레벨243-1 : 쉘프로그램내에서 사용되는 if문의 사용방법과 사용

 

리눅스 쉘프로그램내에서의 if문은 조건식을 평가하여 프로그램의 흐름을 분기하기 위한 목적으로 사용됩니다. 사용되는 형식은 주로 “if 테스트문  then ~ fi” 같이 사용되며 주어진 테스트문을 평가하여 결과가 참일 경우 종료값(exit status)으로 0 반환하여 then다음의 문장이 실행되고 결과가 참이 아닐 경우 종료값으로 0아닌 (1) 반환한 후에 if문을 종료하게 됩니다. 그리고 fi if문의 끝임을 표시하는 문장입니다.

 

간단히 if문의 사용형식을 나타내면 다음과 같습니다.  

 

if [ 테스트문 ]

then

  참일 경우 실행될 명령문들

fi

 

간단한 쉘프로그램으로서 if문의 사용 예를 보도록 하겠습니다.

 

다음은 회원카드를 가지고 있는가를 if문으로 체크하는 간단한 쉘프로그램입니다. , 회원카드를 가지고 있는가를 y 또는 n 입력 받아서 Y또는y 경우에 "OK! Please. come in..."라는 메시지를 출력하고 Y  y 아닐 경우에는 아무런 실행도 하지 않습니다. , if문의 조건에 맞을 경우에 then다음의 명령문들을 실행하게 됩니다.

 

[root@command root]# cat if001.sh

#!/bin/bash

 

echo "Do you have a membership card (y/n): "

read answer

 

if [ "$answer" = Y -o "$answer" = y ]

then

   echo "OK! Please. come in..."

fi

[root@command root]#

 

위에서 “if [ "$answer" = Y -o "$answer" = y ]” 사용자가 입력한 문자가 Y또는 y인가를 확인하는 if문입니다. 그리고 then 아래에 있는 echo "OK! Please. come in..." if문의 값이 참일 경우, if문의 종료 값이 0 경우에 실행되는 명령문입니다. 그리고 fi if문의 끝을 의미합니다.

 

아래는 위의 if001.sh 쉘프로그램을 실행한 예입니다.

 

[root@command root]# ./if001.sh

Do you have a membership card (y/n):

y

OK! Please. come in...

[root@command root]#

[root@command root]# ./if001.sh

Do you have a membership card (y/n):

n

[root@command root]#

 

위의 첫번째 실행에서는 사용자의 입력이 y이기 때문에 then다음의 echo문에 의해“OK! Please. come in...” 출력되었습니다. 두번째 실행에서는 n 입력하였기 때문에 아무런 내용도 출력되지 않은 예입니다.

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,043 명
  • 현재 강좌수 :  35,853 개
  • 현재 접속자 :  90 명