최상위 메뉴로 돌아가는 방법을 구현하는 방법은 무엇입니까?

최상위 메뉴로 돌아가는 방법을 구현하는 방법은 무엇입니까?

다음 줄을 따라 복잡한 메뉴 기반 프로그램이 있습니다.

echo "Navigate through the following choices when you get the #? prompt: "
options=("Action 1" "Action 2" ...)
select $opt in "${options[@]}"
do
    case $opt in
        "Action 1")
            ./action1.sh 
            ;;
        "Action 2")
            ./action1.sh 
            ;;
        ...
    esac
done

(할 일 목록 항목을 추가/삭제/편집/볼 수 있는 간단한 할 일 목록 애플리케이션으로 생각하십시오. 따라서 추가, 삭제 등이 작업입니다.)

이들 중 일부 action는 약간 길기 때문에 작업 중간에 사용자가 마음을 바꾸고 다른 작업을 시도하기 위해 기본 프롬프트로 돌아가기를 원할 수도 있습니다.

내 질문은 사용자가 기본 프롬프트로 돌아갈 수 있도록 하는 방법입니다. 나는 사용자가 select. 가능합니까 아니면 다른 방법이 있습니까?

답변1

기본 프로그램을 다시 시작할 수 있습니다.

 # User wants to return to main
 exec main.sh

그러면 현재 실행 중인 스크립트가 제거되고 main.sh.

내보낸 변수만 새로 시작된 main.sh.

관련 정보