Это такой основной вопрос, я удивлен, что не мог легко найти ответ на него:
Я использую Notepad ++ для написания своих скриптов. Кто-то прислал мне некоторый код для скрипта оболочки (.sh)что я мог бы изменить, чтобы удовлетворить мои потребности.Я просто изменил небольшой текст с помощью Notepad ++ (в Windows) и использовал FileZilla (SFTP) для загрузки его на мой сервер (Debian Linux).
Было несколько проблем с этим, что потребовалось администратору моего серверачас, чтобы найти, а именно:
- FileZilla, по любой причине, по умолчанию ASCII, а не двоичный файл!(изменил его на двоичный и удалил ассоциацию .sh с ASCII)
- Права доступа были неправильными, chmod позаботился об этом
Проблема в том, что ЕЩЕ НЕ работал.Чтобы это исправить, мой администратор сервера просто скопировал текст прямо на сервере (используя vim или nano) в новый файл сценария оболочки и сохранил его.Прежде чем он продолжал говорить, что проблема была в Windows (которую он любит ненавидеть), но, похоже, именно кодировка, используемая текстовыми редакторами, повреждает файлы.
Он сказал, что моя кодировка текстового редактора должнабыть сказано "Ни один".Однако это не вариант - только варианты ANSI, UTF и UTS являются вариантами!
Как создать сценарий оболочки в Windows с без кодировки, чтобы он не получалсяповрежден?
Мне нужно иметь возможность просто передать файл на сервер, я не могу возиться с изменением его один раз на сервере, что совершенно нецелесообразно.