基本的に 0xd の 1 つを削除し、DOS スタイルの行末 (0x0d 0x0a) でファイルを残す「flip -u」(cygwin フリップ) を使用して、「おそらく」それらを修正できることを私は知っています (もちろん、技術的に言えば、これはバグ!)。
しかし、それの反対側は、これを選択的に行いたいということです。私が修正しているのは本当に「非バイナリ」ファイルであり、明示的に 0x0d 0x0d 0x0a シーケンスを 0x0d 0x0a に置き換えます...私がやりたいこと(そしておそらくそれ以上)をしているように見えるバグのあるプログラム。
grep -P '\x0d\x0d\x0a' および grep -P '\x0d\x0d' ではこれらの行が見つからないことに注意してください。
人々は grep -P 'x0d\x0a' が行末を適切に見つけていると言いますが、行末が混在しているファイル内の他のパターンと一致しないため、何か他のことが起こっていると推測する必要があります (0x0d 0x0d 0x0a )。