if else 조건을 사용하여 변수에 문자열 할당

if else 조건을 사용하여 변수에 문자열 할당

나는 이미 코드를 작성했습니다. 변수 값을 확인하십시오. GL인 경우 SQLGL은 XDOAPPL을 수행하고, AP인 경우 SQLAP는 XDOAPPL 변수를 할당해야 합니다. 하지만 그것은 나에게 오류를 준다.

APPL=$1
x=AP
y=GL
echo "Value of x = $x and y = $y."
a=SQLAP
b=SQLGL

if [["$APPL" = "AP"]};
then
XDOAPPL=${a}
echo "AP XDOAPPL =$XDOAPPL"
elif [["$APPL" = "GL"]];
then
XDOAPPL=${b}
echo "GL XDOAPPL =$XDOAPPL"
else
echo "Nothing to go"
fi

답변1

사용 시 [[ ]]또는 내용 사이에 공백을 두어야 합니다. 또한 첫 번째 항목에 a 대신 a를 실수로 입력했습니다.[[]]}]if

올바른 코드는 다음과 같습니다.

APPL=$1
x=AP
y=GL
echo "Value of x = $x and y = $y."
a=SQLAP
b=SQLGL

if [[ "$APPL" = "AP" ]];
then
  XDOAPPL=${a}
  echo "AP XDOAPPL = $XDOAPPL"
elif [[ "$APPL" = "GL" ]];
then
  XDOAPPL=${b}
  echo "GL XDOAPPL = $XDOAPPL"
else
  echo "Nothing to go"
fi

관련 정보