コンマ区切りの csv ファイルの引用符間のコンマを削除する方法についての回答を、StackExchange で見つけました (必要な担当者がいないため、コメントできません)。
awk -F'"' -v OFS='' '{ for (i=2; i<=NF; i+=2) gsub(",", "", $i) } 1' infile
出力をコンソールに印刷するのではなく、ファイルにリダイレクトするにはどうすればよいですか?
'>' をさまざまな組み合わせで試してみましたが、空のファイルまたはエラーしか生成されませんでした。 '>>' を使用すると、毎回エラーが発生しました。
答え1
標準リダイレクトを使用すると、標準出力で機能します。
$ awk -F'"' -v OFS='' '{ for (i=2; i<=NF; i+=2) gsub(",", "", $i) } 1' infile > test.out
$
それでもエラーは画面に表示されます。
ただし、エラーと標準出力をファイルに出力したい場合は、次を実行します。
$ awk -F'"' -v OFS='' '{ for (i=2; i<=NF; i+=2) gsub(",", "", $i) } 1' infile 2>&1 > test.out
$
または、エラーを標準出力から分離することもできます。
awk -F'"' -v OFS='' '{ for (i=2; i<=NF; i+=2) gsub(",", "", $i) } 1' infile 2> errors.out 1 > test.out