반응형

case문은 어떤 조건을 연속으로 비교하다가 맞는 조건일 때 실행한다.

물론 if - else 조건문으로도 가능하지만, case문으로는 간단하게 만들 수 있다.

(if조건문 아래 참고)

ansan-survivor.tistory.com/539

 

[CentOS 7] 리눅스 배시 셸 (bash Shell) if문 조건문

if 조건문 사용법 *주의점 대괄호 [ ] 의 앞 뒤는 반드시 공백이 있어야 함 변수의 입력 방식 ${변수명} if 로 시작해서 fi 로 끝남 if [ 조건 ] then 참일 때 실행 if - 예시 test.sh #!/bin/sh a=1 if [ ${a} ==..

ansan-survivor.tistory.com

case 조건문 사용법

  *주의점

              분기점에는  변수명) 으로 시작해서 ;; 으로 끝난다.

              변수의 입력 방식 ${변수명}

              case 로 시작해서 esac 로 끝남

              

 

case문 테스트

  유저의 Parsing 인자에 따라 값을 내보내는 bash프로그램

  ($1 의미 : 유저가 파싱하는 첫번째 인자)

#!/bin/sh

variable=$1

case ${variable} in
  start)
    echo "it's started"
  ;;
  pause)
    echo "it's temperately stopped"
  ;;
  stop)
    echo "it's down"
  ;;
  *)
    echo "known command"
  ;;
esac

exit 0

(결과)

 

응용

#!/bin/sh

echo "are you sure? (yes/no or Y/N)"

read answer

case ${answer} in
  yes | YES | Y | y)
    echo "Done"
  ;;
  [nN]*)
    echo "canceled"
  ;;
  *)
    echo "known command"
  ;;
esac

exit 0

read 로 유저로 부터 오는 명령어를 기다림

해당 명령어를 answer변수에 넣고 case문 가동

대소문자 구분없이 | (or)를 이용해서 4개의 yes가 들어오도록 함

반면에 소문자n이나, 대문자N이나 상관없이 n으로 시작하기만 하면 모두 canceled로 받아들임

 

(결과)

 

반응형

+ Recent posts