1) 나는 이와 같은 유닉스 스크립트를 작성하고 싶다
echo "Do u want to check application logs ???"
select opt in Yes No
do
case $opt in
"Yes")
commmands
;;
"No")
break
;;
esac
done
echo "Do u want to check non-application logs ???"
select opt in Yes No
do
case $opt in
"Yes")
commmands
;;
"No")
break
;;
esac
done
첫 번째 부분을 실행한 후 종료하고 같은 내용을 계속해서 묻고 다른 부분인 비 응용 프로그램 로그로 이동하지 않습니다.
2) Unix 쉘 스크립트에서 두 개의 select 문과 두 개의 Case 문을 사용할 수 있습니까? 그렇다면 구문을 알려주십시오.
답변1
bash
도움말 에서 select
:
선택: 이름 선택 [워드로 ... ;] 명령 실행, 완료
...
명령은 인터럽트 명령이 실행될 때까지 각 선택 후에 실행됩니다.
break
break
거기 에 있는 명령은 case
가 아니라 입니다 . 블록 외부에 하나를 넣어야 select
합니다 .break
case
예를 들어:
echo "Do u want to check application logs ???"
select opt in Yes No
do
case $opt in
"Yes")
commmands
;;
esac
break
done
또한 여기에는 case
작업이 하나뿐이므로 해당 작업도 사용할 수 있지만 if
그 여부는 사용자에게 맡기겠습니다.