sedを使用して壊れた改行を修正する

sedを使用して壊れた改行を修正する

ファイルがいっぱいのフォルダがあり、各ファイルには数百行があります。これらのファイルの多くには時々改行があります。 vimでファイルを開くと、多くのファイルに改行文字が必要な場所に^ M ^ Lが散在しています。

vimでは%s/^M^L/\r/gこれを実行して問題を修正できます。ただし、すべてのファイルに対してこれを実行したくありません。

だから私はsedを通してbashスクリプトでこれを試しましたが、成功しませんでした。私は両方を試しました。

sed 's/^M^L/\r/g' filenameそして

sed 's/^M^L/\
/g' filename

注:私はShift-6(^)Mだけでなく、^ M ^ Lがここに現れるたびにctrl-v ctrl-mを実行しました。

私は何が間違っていましたか?さらに重要なことに、それを機能させるにはどうすればよいですか?

ベストアンサー1

次のことができる必要があります。

sed 's/\x0C//g`

または

sed 's/\x0D\x0C/\x0D/g'

またはGNUを使用している場合sed

sed 's/\r\f/\r/'

おすすめ記事