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

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

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

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

 

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

 

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

 

if [ 테스트문 ]

then

참일 경우 실행될 명령문들

else

  거짓일 경우 실행될 명령문들

fi

 

다음 예로든 쉘프로그램은 if명령어편에서 예로든 쉘프로그램을 if~else문으로 수정한 것입니다.  

 

,  if문에서 회원카드를 가지고 있을 경우 then다음의 echo문에 의해“OK! Please. come in..." 출력되고 그렇지 않을 경우에 else 다음의 echo문에 의해 “Sorry! you are not allowed” 출력되는 간단한 쉘프로그램입니다.

 

[root@command root]# cat if003.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..."

else

   echo "Sorry! you are not allowed"

fi

[root@command root]#

 

,  프로그램을 실행시키면 먼저 echo문에 의해 "Do you have a membership card (y/n): " 출력이 되고 다음 read문에 의해 사용자의 입력을 기다립니다. 여기서 사용자가 입력한 값이 Y또는y 경우에 "OK! Please. come in..."라는 메시지를 출력하고 Y  y 아닐 경우에는 "Sorry! you are not allowed" 출력됩니다.

 

프로그램에서는 if~then~else~fi 구조를 살펴보시기 바랍니다. 

 

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

 

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

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

y

OK! Please. come in...

[root@command root]#

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

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

n

Sorry! you are not allowed

[root@command root]#

 

첫번째의 실행에서 사용자의 입력이 y이기 때문에 then다음의 echo문에 의해“OK! Please. come in...”이라는 메시지가 출력 되었습니다.

 

두번째의 실행에서 사용자의 입력이 Y또는 y 아니기 때문에 else다음의 echo문에 의해 “Sorry! you are not allowed”메시지가 출력된 것입니다.

 

관련자료

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

공지사항


뉴스광장


  • 현재 회원수 :  60,041 명
  • 현재 강좌수 :  35,855 개
  • 현재 접속자 :  108 명