elif 구문 오류로 인해 bash의 준중첩 조건문이 실패합니다.

elif 구문 오류로 인해 bash의 준중첩 조건문이 실패합니다.

Bash에서 일부 조건을 수행하는 코드가 있습니다.

firstchar=$(head -c 1 /tmp/project.json)
if [ $? -eq 0 ] then;
  echo "Hooray! nothing found"

elif [ $? -eq 1 ]; then                    
  #check single project
  if [[ $firstchar == "{" ]]; then         
    echo "SINGLE PROJECT"
  elif [[ $firstchar == "[" ]]; then
    echo "MULTIPROJECT"
  else
    echo "didnot get a single or multiproject"
  fi

elif [ $? -eq 2 ] then;
  echo "An error occurred, please contact me"

elif [ $? -eq 3 ] then;
  echo "lah"

else
  echo "Something else occurred on file"
fi

멘션을 실행하지 못하는 이유:7: syntax error near unexpected token elif'

감사해요

답변1

문제는if [ $? -eq 0 ] then;

이것은 아마도if [ $? -eq 0 ] ; then

일부는 맞지만 일부는 틀립니다.

마음에 들지 않는 이유는 시작 명령문이 없기 때문에 elif테스트의 일부이기 때문입니다 .ifthen

관련 정보