.CSVファイルの複数の列からアポストロフィ( ')を削除するには?

.CSVファイルの複数の列からアポストロフィ( ')を削除するには?

7つのフィールドを持つ.CSVファイルがあり、ファイルの3番目と4番目の列にアポストロフィ( ')で始まる数字があります。以下の例をご覧ください。

col0,col1,col2,col3,col4,col5,col6,
1value0,1value1,'8972991766941,'8972991766941,1value4,1value5,1value6,
2value0,2value1,'8912988876583,'8912988876583,2value4,2value5,2value6,
3value,3value1,'8912981226981,'8912981226981,3value4,3value5,3value6,
2value0,4value1,'8912971783681,'8912971783681,4value4,4value5,4value6,

sedまたはawkのみを使用して、3列目と4列目のアポストロフィをどのように削除できますか?

ベストアンサー1

これを行うことができますawk。アイデアは息子列3と4にコマンドを設定し、一重引用符を空白に置き換えます。ここに\047示されている8進数のコードです'

 awk -F, -v OFS=, '{sub(/\047/, "", $3); sub(/\047/, "", $4); print}' file.txt

おすすめ記事