Замените lf на cr-lf в текстовом файле Cygwin
У меня есть скрипт Cygwin, который выводит материал в файл. Моя единственная проблема в том, что он всегда использует \ n "lf" окончания строк вместо \r\n "cr-lf". Я хочу либо заменить их, либо просто заставить Cygwin всегда выводить \ r \ n для окончания строки.
Я попробовал следующие две команды безрезультатно в сценарии.
unix2dos d:/temp.txt
sed -i -e 's/\n/\r\n/g' d:/temp.txt
2 ответа
Вы указываете путь к unix2dos
используя причудливое сочетание концовок Windows и Linux.
Если вы вызываете его из командной оболочки Windows, используйте это:
unix2dos d:\temp.txt
Если вы вызываете его из Cygwin, или из сценария оболочки Cygwin или аналогичного, используйте это:
unix2dos /cygdrive/d/temp.txt
Ваш unix2dos
звонок должен работать. Вы получаете какую-то ошибку?
У установщика Cygwin есть опция выбора соглашения о конце строки по умолчанию (DOS или Unix), хотя он может отображаться только во время новой установки - я не помню, чтобы это было сделано вручную.