커맨드라인(case)문은 사용자로부터 입력된 값을 조건문으로 처리하여 그에 따라 다른 동작을 수행하는 구문입니다. switch문과 유사한 기능을 가지며, 다양한 조건문을 처리할 수 있습니다.
커맨드라인(case)문의 기본적인 구문입니다.
case 값1 in 패턴1) 명령어1 ;; 패턴2) 명령어2 ;; *) 기본명령어 ;; esac
위의 코드에서 값1은 커맨드라인 인수의 값이며, 패턴1, 패턴2는 값1과 비교할 패턴을 의미합니다. 각 패턴에 해당하는 명령어는 실행되며, 만약 일치하는 패턴이 없을 경우에는 * 패턴에 해당하는 기본명령어가 실행됩니다.
#!/bin/bash
case “$1” in start) echo “Starting service..” ;; stop) echo “Stopping service..” ;; restart) echo “Restarting service..” ;; *) echo “Usage: $0 {start|stop|restart}” exit 1 ;; esac
exit 0
위의 코드에서는 사용자로부터 입력된 인수가 start, stop, restart 중 어느 것인지에 따라 다른 동작을 수행합니다. 만약 인수가 해당하지 않을 경우에는 사용법을 출력하고 종료합니다.
커맨드라인(case)문은 셸 스크립트를 작성할 때 매우 유용한 구문 중 하나입니다. 복잡한 조건문을 처리하기에 용이하며, 간결하게 코드를 작성할 수 있습니다.