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

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

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

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

  • Как выполнить удаленный сценарий оболочки через SSH и получить запрос на пароли командами, которые требуют этого в этом скрипте?
  • Измените значение в файле конфигурации или добавьте параметр, если он не существует?
  • Javascript BTOA против base64 в bash?
  • Как безопасно загружать файлы в сценарии оболочки?
  • Как распознать состояние праздности в течение определенного периода в сценарии?
  • Прочитайте каждый каталог и выполните действия в скрипте Bash
  • не удалось изменить каталог на «/ home / corey / scripts»: разрешение отклонено
  • Подсчитайте строки, соответствующие шаблону и соответствующие предыдущей строке
  • One Solution collect form web for “оболочка неожиданный конец ошибки файла”

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

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

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

    Linux и Unix - лучшая ОС в мире.