12. 메뉴 출력 후에 선택할 때 select 문을 사용하면 편해요.

안녕하세요. 언제나 휴일, 언휴예요.

쉘 프로그래밍에서 메뉴를 선택하여 수행하는 것을 반복할 때는 select 문을 사용하면 편해요.

select 뒤에 변수 그리고 in 뒤에 선택할 메뉴 항목을 명시합니다. 그리고 수행할 작업을 do 와 done 사이에 입력합니다.

select 변수 in 메뉴 목록

do

수행할 작업

done

select 문에 의해 명시한 메뉴 항목을 선택할 때 순번으로 선택할 수 있어요. 이를 위해 select 문의 메뉴 항목을 순번과 함께 출력해 주어 사용자가 순번을 입력하는 것을 유도합니다. 만약 메뉴 선택에 따라 수행한 후에 다시 같은 작업을 원한다면 REPLY=를 사용하세요.

다음은 ls, date, quit 메뉴 중에 하나를 선택하는 것을 반복하는 예제입니다. ls나 date를 입력하면 해당 명령을 수행하고 quit을 입력하면 select 문을 탈출합니다.

#select_sh
#쉘 프로그래밍 실습
#select
#작성자 : eh. jang
echo 메뉴를 선택하세요.

select cmd in ls date quit
do
    case $cmd in
    ls) ls;;
    date) date;;
    quit) break;;
    *) echo “잘못 선택하셨군요.”;;
    esac
    REPLY=
done
[그림 1] select 문 사용
[그림 1] select 문 사용