아래 스크립트보다 훨씬 긴 스크립트를 가져왔습니다. 현재는 수동으로 환경에 들어가 export
git 리포지토리로 푸시한 다음 마스터를 가져와야 합니다. 나는 이것이 당신이 원하는 것인지 확인한 후 번호가 매겨진 질문을 통해 선택을 도출하기 위해 변수를 사용하고 싶습니다. 예를 들어 선택한 내용을 에코하고 "예/아니요/취소하시겠습니까(y/n/c)"라고 말하세요(이 부분은 제가 할 수 있습니다).
선택한 항목을 캡처하고 내보내는 방법을 모르겠습니다.
#!/bin/bash
clear
PS3='Please enter your choice(s): '
options=("Test" "UAT" "PreProd" "Prod" "Quit")
select opt in "${options[@]}"
do
case $opt in
"Test")
echo "You chose Test"
;;
"UAT")
echo "You chose UAT"
;;
"PreProd")
echo "You chose PreProd"
;;
"Prod")
echo "You chose Prod"
;;
"Quit")
break
;;
*) echo invalid option;;
esac
done
export ENVIRONMENTS=(test uat preprod)
답변1
Case 문에 변수를 할당하면 됩니다.
declare -a ENVIRONMENTS
case $opt in
"Test")
echo "You chose Test"
ENVIRONMENTS+=("test")
;;
"UAT")
echo "You chose UAT"
ENVIRONMENTS+=("uat")
;;
"PreProd")
echo "You chose PreProd"
ENVIRONMENTS+=("preprod")
;;
"Prod")
echo "You chose Prod"
ENVIRONMENTS+=("prod")
;;
"Quit")
break
;;
*) echo invalid option;;
esac
#...
export ENVIRONMENTS