Сегодня расскажу один простой способ как сконвертировать текстовый файл, созданный в windows, для использования в unix.
Допустим нам требуется сгенерировать bash скрипт на windows, который мы потом применим на linux машине. Если мы просто скинем готовый скрипт на linux и попробуем его запустить, то столкнемся с ошибками, при его выполнении, которые будут вызваны командным интерпретатором. Bash попросту не сможет правильно обработать перенос строк, в виду того что форматы текстовых файлов для windows и linux несколько отличаются друг от друга.
Решением в данном случае будет прогнать bash скрипт через утилиту dos2unix перед его выполнением.
Предварительно установим её
apt-get install dos2unix
Теперь сконвертируем наш скрипт в unix формат. Синтаксис максимально прост:
dos2unix %filename%
или dos2unix -n %filename1% %filename2% (если нам нужно чтобы создался новый файл)
Утилита сообщит нам о том, что конвертирует файл. По завершении операции запустим наш сконвертированный скрипт. Теперь bash выполняет его успешно. Как видите все быстро и просто :-)
Утилита обладает различными настройками конвертирования (например, выбором кодовой страницы). Более подробно с утилитой и её авторами можно ознакомиться здесь:
http://dos2unix.sourceforge.net/
Кстати, для обратных целей (конвератиции из unix формата в windows) существует аналогичная утилита unix2dos, которая будет доступна после установки dos2unix.