by shigemk2

当面は技術的なことしか書かない

opencsv csvwriter

デフォルト。

カンマ区切りで、データーをダブルクォート(“)で囲み、データー中のダブルクォートはダブルクォートでエスケープされます。

囲み文字をなし。

new CSVWriter(writer, ',', CSVWriter.NO_QUOTE_CHARACTER);

ここにも「よくわからない」って書いてあるってことは、たぶんデータの中に"が入っていたときの対応方法はわからないんだとおもう。x

OpenCSV - Javaについて

gnu parallel

gnu parallel

並列実行を制御できるようにするLinuxのアレ。

brew install parallel とか、メジャーなパッケージマネージャーからはだいたいインストールできると思う。

とかやっちゃえばいいんだね。でも、sedとリダイレクトの組み合わせがよくわからないね

これはOKだけど、

find data/ -type f -name "*.csv" | parallel -j+2 "cat {} | sed "s/aaa/bbb/g" > test{/.}.out"

こういうのはNGなんだね。まあよくみたらそれもそうだねっていう気持ちにはなる。だってこれ、1行1行渡しているから。

find data/ -type f -name "*.csv" | parallel -j+2 "cat {} > test{/.}.out | xargs sed "s/aaa/bbb/g""

https://www.gnu.org/software/parallel/parallel_tutorial.html