また役に立つまともなツールを作ってしまった・・・

csv のカンマをパイプに置き換えるツールです。ダブルクォーテーション内は置き換えません。カンマってデータ中にもよく出てくるので、awk などでテキスト処理したいときに、いつも面倒な問題がつきまといます。パイプであれば日常的にデータの中に使う人はほぼ居ないので、区切り文字をパイプにしておくと便利です。*1
正規表現を使う方法もありますが、後でコードが意味不明*2になるのでwwwww、使わない方法で書きました。

with open('./in-file', 'r', encoding='shift-jis') as inf:
    with open('./out-file', 'w', newline='\r\n', encoding='shift-jis') as outf:
        for line in inf:
            for idx, word in enumerate(line.split('"')):
                if idx % 2 == 0:
                    outf.write(word.replace(',', '|'))
                else:
                    outf.write('"' + word + '"')

性能は 500 万行程度あるファイルサイズが 900 MB ほどの CSV を 40 秒程度で処理できるため、十分実用的な速さだと思います。職場 PC のセキュリティソフトが McAfeeCygwin と相性が悪い*3ため、sed を使った正規表現では性能テストはできませんでした。

*1:プログラマーじゃない普通の人は「パイプって一体何に使うのん?」って日頃思っていると思われますw

*2:すぐ忘れるためw

*3:めちゃくちゃ監視してくるので、スクリプトの動作が鬼遅い