概略
windowsで作成したファイルをlinuxに転送した場合に、改行コードの差分によってうまくコードが動作しないことがある。
windows上でファイルを保存する際に、改行コードをLFで保存すれば良いが、windows上で修正して再度linuxへアップロード・・・というのも面倒な時は、linux上で一括置換で修正してしまっても良いでしょう。
実行コマンド
:%s/^M//g
解説
上記の「^M」というのは、「Ctrl」+「V」キーを押してから、「Ctrl」+「M」キーを押すことで入力できる。
そもそもvi上で一括置換操作を実行するためのコマンドが以下の通り。
:%s/[置換元文字列]/[置換先文字列]/g
「^M」というのは「CR」の改行コードを表すので、上記コマンドの意味合いとしては、
「CR」を全て削除する → 「CRLF」を「LF」に変換する
ということになります。
■参考
・置換コマンドについて
https://www.netandfield.com/~shinoda/tech/0012_vi_LFCR.html
・改行コードの文字コードについて
https://www.koikikukan.com/archives/2013/10/15-013333.php
https://ja.wikipedia.org/wiki/ASCII#ASCII.E5.88.B6.E5.BE.A1.E6.96.87.E5.AD.97