Bash 스크립트에서는 값이 외부 전역 환경 변수( )에 따라 달라지도록 로컬 변수를 할당합니다 $MYAPP_ENV
.
if [ "$MYAPP_ENV" == "PROD" ]
then
[email protected]
else
[email protected]
fi
위 과제를 작성하는 더 짧지만 더 깔끔한 방법이 있나요? (아마도 일종의 조건 연산자/인라인 if를 사용했을 것입니다.)
답변1
케이스/스위치를 사용하여 이 작업을 수행할 수도 있습니다 bash
.
case "$MYAPP_ENV" in
PROD) SERVER_LOGIN="[email protected]" ;;
*) SERVER_LOGIN="[email protected]" ;;
esac
또는 이 방법은 다음과 같습니다.
[ "$MYAPP_ENV" = PROD ] &&
[email protected] ||
[email protected]
답변2
노력하다:
[ condition ] && var=value_when_true || var=value_when_false
할당이 숫자인 경우 bash
삼항 연산을 사용할 수 있습니다.
(( assign_condition ? value_when_true : value_when_false ))
답변3
&&
and ||
연산자 를 사용할 수 있습니다.
[ "$MYAPP_ENV" == "PROD" ] && [email protected] || [email protected]