私はbashを使用しており、データの2つの列(App、Blurb)のみが必要なcsvファイル(dat.csv)がありますが、各行に「、」が多いため、多くの列になります。
問題のあるcsv.datの例:
App , Blurb
diff, this is the diff program, bla bla bla, yadda yadda
word, this is ms product, it is not very good, I dont like it
dd, this is a Linux disk application , its awesome!, bla bla, ttly
...
私が経験している問題は、「Blurb」列に追加の「」があるため、データがdat.csvファイルの後続の列(c、dなど)にパイプされることです。
目的は、各行の最初の「、」を除くすべての項目を「COMMA」に変更して、すべての「Blurb」データが列Bに保持されるようにすることです。
たとえば、希望の出力は次のようになります。
App, Blurb
diff, this is the diff program<COMMMA> bla bla bla<COMMA> yadda yadda
word, this is ms product<COMMA> it is not very good<COMMA> I dont like it
dd, this is a Linux disk application <COMMA> its awesome!<COMMA>bla bla<COMMA> ttly
...
ありがとうございます!
ベストアンサー1
GNUの使用sed
:
sed 's/,/<COMMA>/2g' infile
または移植性のために:
sed 's/,/<COMMA>/g; s/<COMMA>/,/' infile