Jestem programistą Java i używam Ubuntu do rozwoju. Projekt został stworzony w systemie Windows z Eclipse i wykorzystuje kodowanie CP1252.Jak przekonwertować koniec systemu Windows na końcu linii (CR/LF na LF)?
Aby przekonwertować na UTF-8 Użyłem programu recode:
find Web -iname \*.java | xargs recode CP1252...UTF-8
to polecenie daje ten błąd:
recode: Web/src/br/cits/projeto/geral/presentation/GravacaoMessageHelper.java failed: Ambiguous output in step `CR-LF..data
Mam serached o tym i uzyskać rozwiązanie tutaj: http://fvue.nl/wiki/Bash_and_Windows#Recode:_Ambiguous_output_in_step_.60data..CR-LF.27 i mówi:
Convert line endings from CR/LF to a single LF: Edit the file with vim , give the command :set ff=unix and save the file. Recode now should run without errors.
ładne, ale mam wiele plików, aby usunąć znak CR/LF, Nie mogę otworzyć każdego, aby to zrobić. Vi nie udostępnia opcji wiersza poleceń dla operacji basha.
sed może być do tego użyty? W jaki sposób ?
Thankx =)
'recode' produkuje ten błąd podczas próby przekodowania pliku z mieszanym kodowaniem dos (' \ r \ n' - CRLF) i uniksem ('\ n' LF). Niestety 'fromdos', poprzednio binarny, jest obecnie aliasem do recode, który ma ten problem. – TMS
Nie możesz zrobić "vim + ex_command_one + ex_command_two ... file' – derekdreery