예기치 않은 표시 "완료" 근처에서 BASH 구문 오류가 발생했습니다.

예기치 않은 표시 "완료" 근처에서 BASH 구문 오류가 발생했습니다.

여기에 문제가 있나요? "완료"에 가까워지면 오류가 발생합니다.

echo " Writing a program to print even numbers by adding 1 if the number is odd."
for i in {1..10}
do
    d=$(($i % 2))
    if [[$d = 1]]
    then
        $iq=$(($i+1))
        echo "$iq"
done
echo "end"

답변1

이것은 작동합니다:

#!/bin/bash -

echo " Writing a program to print even numbers by adding 1 if the number is odd."
for i in {1..10}
do
    d=$(($i % 2))
    if [[ $d -eq 1 ]]
    then
    iq=$(($i+1))
    echo "$iq"
    fi
done
echo "end"

를 삽입하고 fi, 삭제 $하고 $iq=..., 내부에 공백을 추가합니다 [[ ... ]].

관련 정보