구문 오류: 예기치 않은 파일 끝 - Bash 스크립트

구문 오류: 예기치 않은 파일 끝 - Bash 스크립트

Spritz 애플리케이션을 만들려고 합니다. 모든 것이 잘 작동하지만 어제부터 다음 오류가 계속 발생합니다.

./spritz: 176행: 구문 오류: 예기치 않은 파일 끝

스크립트 파일을 확인해 보니 모든 것이 완벽해 보였습니다. 너무 혼란스럽습니다. 마침내 if 문이 생겼고 올바른 것 같습니다! 이것은 마지막 부분입니다:

#checks if speed is 150
157 if [[ $2 -eq 150 ]];
158 then
159 starttime=$SECONDS
160      FS=$'\n'
161      for j in `grep --color=always -iP '\b[^aeiou\s]*[aeiou][^aeiou\s]*\K[aeiou]' $1`;
162      do
163            #Reads the text file in the centre of the screen
164            echo "                                                    ___________________"
165            echo "                                                             $j";
166            echo "                                                    ___________________"
167            echo "                                                                               Speed 150 wpm"
168            sleep  0.9;
169            clear;
170       done
171 endtime=$(($SECONDS - $starttime))
172            echo "You read $words_read words in $endtime seconds!"
173       exit 8
174 fi

이 오류의 원인은 무엇입니까?

답변1

진단"예기치 않은 파일 끝"if일치하지 않거나 종료되지 않은 개방형 구문 구조( w/o fi, dow/o done, 관련 닫는 괄호가 없는 왼쪽 괄호, 열려 있지만 종료되지 않은 따옴표 등)가 있음을 암시합니다 . 이 경우 스크립트 끝을 가리키는 줄 번호는 구문 구조를 확인하는 것 외에는 도움이 되지 않습니다. 오류는 코드의 어느 곳에나 나타날 수 있습니다. 꼭 확인해 보세요.

관련 정보