Я разработчик Java и использую Ubuntu для разработки. Проект был создан в Windows с Eclipse, и он использует Windows-1252 кодировке .
Для преобразования в UTF-8 я использовал программу перекодирования :
find Web -iname \*.java | xargs recode CP1252...UTF-8
Эта команда выдает эту ошибку:
recode: Web/src/br/cits/projeto/geral/presentation/GravacaoMessageHelper.java failed: Ambiguous output in step `CR-LF..data
Я искал об этом и получил решение в Bash и Windows, Recode: неоднозначный вывод на шаге `data..CR-LF ', и он говорит:
Преобразование окончаний строк из CR / LF в один LF: отредактируйте файл с помощью Vim, дайте команду
:set ff=unix
и сохраните файл. Перекодировать сейчас должно пройти без ошибок.
Хорошо, но у меня много файлов, из которых нужно удалить символ CR / LF, и я не могу открыть каждый, чтобы это сделать. Vi не предоставляет никаких параметров для командной строки для операций Bash.
Можно ли использовать sed для этого? Как?
recode
выдает эту ошибку при попытке перекодировать файл со смешанным кодированием новой строки dos (\r\n
- CRLF) и unix (\n
LF). К сожалениюfromdos
, ранее бинарный файл, в настоящее время является псевдонимом для перекодирования, в котором есть эта проблема.