Как убрать Windows (DOS) символы перевода строки ^M с редакторе VI

^M regexp vi carriage return

Как убрать Windows DOS символы перевода строки ^M с редакторе VI

Unix использует для перевода строки последовательность символов 0xA . Windows использует комбинацию двух символов: 0xD 0xA.

0xD - это символ перевода строки.  Редактор vi отображает последовательность 0xD в виде  ^M

Можно удалить все эти ненужные символы   ^M^M  с помощью следующей команды

:%s/^V^M//g

где  ^V^M  это последовательно нажатые клавиши  CTRL+V,CTRL+M , которые иммитируют ввод символа  ^M внутри редактора  vi.

Это выражение заменяет  ^M на пустоту по всему документу ключ /g \- globally

http://stackoverflow.com/questions/5843495/what-does-m-character-mean-in-vim 

2-ой способ - команда shell TR translate or delete characters

tr -d \\r \<dosfile> unixfile

-- Originally by Dru \<genesis@istar.ca>