оболочка неожиданный конец ошибки файла

У меня был следующий скрипт, работающий в Linux-машине.

page="$(curl http://www.google.com/| grep "title")" if [ -z "$page" ]; then echo "Empty page" else echo "Valid page" fi 

Когда я бегу на другой машине, я получаю ошибку синтаксиса ошибки: неожиданный конец файла . Почему вы получаете эту ошибку?

One Solution collect form web for “оболочка неожиданный конец ошибки файла”

Вероятно, у вас есть невидимые символы CR в конце ваших строк (например, когда файл находится в формате Microsoft, где строки заканчиваются последовательностью символов CRLF вместо LF).

Затем оболочка жалуется, что она доходит до конца файла сценария, не найдя последующего if (есть только then<CR> ).

Используйте dos2unix или dos2unix или dos2unix a :set ff=unix in vim чтобы исправить файл сценария.

  • Можно ли периодически менять PS1 по сценарию в фоновом режиме?
  • Параметр одиночного кавычки сценария Bash с параметром globbing
  • Объединение файлов по строкам
  • Источник «gsed: не может читать: нет такого файла или каталога»?
  • Файл не найден (cygwin в Windows)
  • sudo kill: операция не разрешена через SSH
  • Проблема с памятью: малина Pi
  • Наследовать перенаправления IO из сценария в другой
  • Преобразование строки ввода в дату в сценарии оболочки
  • Как искать и извлекать строку из вывода команды?
  • Запустите сценарий оболочки и прочитайте вывод в переменной и запустите другой скрипт на основе вывода
  • Linux и Unix - лучшая ОС в мире.