「^M」の削除

仕事でlinuxでscriptコマンドでログを取りそれを読んでいるのだが、^Mが行末についてしまう。
viで開いて

%s/^M//g

を実行して消している。 

Ctrlキーを押しながらV+Mで^Mが入力できることを知っただけで喜んでいたのだが、わざわざ viで開くのも同じ置換コマンドを何度も打つのもめんどくさくなってきた。

sedを使えばファイルを開かずにできるとは聞いていたのだが、今日初めて実際にやってみた。

sed 's/^M//g' aaa.log 

画面上にダーっとファイルの中身が表示される。

ファイルを開いたが元のままだ。 

置換されてねーじゃん、とつぶやいたが、別ファイルにリダイレクトするのだと気づいた。

sed 's/^M//g' aaa.log > bbb.log 

こりゃいい!