Форум русскоязычного сообщества Ubuntu


Автор Тема: Ошибка интерпретирования кода на unix >>> windows=>unix <<<  (Прочитано 329 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн panarte

  • Автор темы
  • Новичок
  • *
  • Сообщений: 16
    • Просмотр профиля
Всем добра.
Открыл тут вот что для себя. Может быть будет кому-то еще полезно или интересно.
...
Появилась необходимость настроить iptables путем создания исполняемого скриптика, с последующим его запуском.
Набор правил минимально мне необходимый, но речь не о самих настройках.
И так. Создал файл iptables_index.sh
Набирал его в sublime text, вперемешку с Notepad++ !!! на windows. это важно !!!
Начало файла стандартное - #!/bin/bash (#!/bin/sh)
далее по тексту необходимые настройки.
Сохраняю. Перекидываю на виртуалку.
Делаю исполняемым. Запускаю через sudo и:
Цитировать
unable to execute: no such files or directory

В общем что только не делал, а ошибка одна и та же и естественно никакие правила не применяются.
В итоге для себя выяснил, что на windows в sublime и notepad++ файл сохраняется со своим форматированием.
То есть внешне текст выглядит совершенно правильно, но unix не может его верно интерпретировать и выдает ошибку.
Один раз ошибка была такая:
Цитировать
unable to execute: no such files or directory #!/bin/bash^M

То есть вот этот симовл ^M и не давал правильно интерпретировать код.
В общем если кто-то знает о таких вещах, скиньте ссылку, где можно поподробнее почитать - будет интересно.

Ну, а решилось это оч.просто (на следующий вечер))
В репезотории есть замечательный скрипт dos2unix, который и конвертировал мой .sh в понятный для unix код.

dos2unix

Хотя, полагаю, есть еще более простые решения. Возможно, какие-то настройки в самих программах sublime или notepad++

ТС не появлялся на Форуме более полугода по состоянию на 14/07/2019 (последняя явка: 19/03/2018). Модератором раздела принято решение закрыть тему.
--zg_nico
« Последнее редактирование: 14 Июль 2019, 05:08:31 от zg_nico »

Оффлайн ecc83

  • Старожил
  • *
  • Сообщений: 2083
  • Lubuntu 16.04 LTS
    • Просмотр профиля
Хотя, полагаю, есть еще более простые решения.

Простые и правильные решения, не использовать "MS Word" для создания конфигуранионных файлов и скриптов.
В таких редакторах куча невидимых служебных символов форматирования текста и прочего.
Лучше всего консольные редакторы, типа nano или mcedit. Второй включен в комплект консольного файлового менеджера Midnight Commander.

Оффлайн panarte

  • Автор темы
  • Новичок
  • *
  • Сообщений: 16
    • Просмотр профиля
Хотя, полагаю, есть еще более простые решения.

Простые и правильные решения, не использовать "MS Word" для создания конфигуранионных файлов и скриптов.
В таких редакторах куча невидимых служебных символов форматирования текста и прочего.
Лучше всего консольные редакторы, типа nano или mcedit. Второй включен в комплект консольного файлового менеджера Midnight Commander.

спасибо.
Да, теперь уже только так.
К слову, изучил в свое время основы vim и несказанно ему рад)

Оффлайн ecc83

  • Старожил
  • *
  • Сообщений: 2083
  • Lubuntu 16.04 LTS
    • Просмотр профиля
К слову, изучил в свое время основы vim и несказанно ему рад)

vim конечно на любителя и человека с крепкими нервами. А так то я всегда устанавливаю Midnight Commander, для настройки текстовых конфигов и работы в "голой" консоли идеальное решение.

 

Страница сгенерирована за 0.114 секунд. Запросов: 22.