쉘프로그래밍강좌029: case문의 실 사용 예
작성자 정보
- 관리자 작성
- 작성일
컨텐츠 정보
- 2,147 조회
- 0 추천
- 목록
본문
쉘프로그래밍강좌029: case문의 실 사용 예
다음은 /etc/rc.d/init.d/디렉토리내에 있는 sshd 스크립트파일의 일부입니다.
아래의 쉘스크립트파일을 보시면 case문을 사용하고 있고 $1이라는 변수값에 따라서 어떤 것을 실행할 것인가를 선택적으로 처리할 수 있습니다.
case "$1" in start) start ;; stop) stop ;; restart) stop start ;; reload) reload ;; condrestart) if [ -f /var/lock/subsys/sshd ] ; then do_restart_sanity_check if [ "$RETVAL" = 0 ] ; then stop # avoid race sleep 3 start fi fi ;; status) status -p $PID_FILE openssh-daemon RETVAL=$? ;; *) echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}" RETVAL=1 esac |
$1에는 명령어를 제외한 첫번째 인자가 할당됩니다.
즉, 사용자가
sshd start를 실행했을 경우 $1변수에 start라는 변수가 할당되고,
sshd stop을 실행하였을 경우에는 $1에 stop이 할당되며,
sshd restart를 실행하였을 경우에는 $1에 restart가 할당이 됩니다.
그리고 sshd status를 실행하였을 경우에는 $1에 status가 각각 할당되어서
case문 내에 설정되어 있는 해당 내용이 실행되게 됩니다.
결론적으로 case문은 여러 가지 메뉴를 가진 선택 형 쉘프로그램 개발에 최적이라는 것을 알 수 있습니다.
이번 쉘프로그램을 응용하여 실무에서 사용할 수 있는 유용한 쉘프로그램을 직접 만들어 보시기 바랍니다.
관련자료
-
이전
-
다음