vimで開いたファイルで、^Mの改行を 'normal'の改行に変換するには?

vim は ^M で終わるすべての行を表示します。

これを通常の改行に置き換えるにはどうしたらいいですか?

コマンド

:%s//\r/g

ここで、``は、Ctrl+Vの後に、Ctrl+Mと入力することを意味します。

說明

:%s

置換, % = すべての行

^M文字(Ctrl-VはVimのCtrl ^文字の書き方で、Ctrl-Mは正規表現の後にMを書き、結果として^M特殊文字になります。

/\r/

with new line (`˶ˆ꒳ˆ˵)

g

そして、それを(その行の最初の出現箇所だけでなく)グローバルに行う。

解説 (23)

LinuxやMac OSでは、以下のように動作します。

:%s/^V^M/^V^M/g

ここで、^V^Mは、Ctrl+Vと入力した後、Ctrl+Mと入力することを意味します。

注意:Windowsの場合、デフォルトでは^Vがテキストの貼り付けにマッピングされているので、^Vの代わりに^Qを使うとよいでしょう。

解説 (26)

^Mは、Ctrl+VとMで検索されますので。

s/^M//g
解説 (0)