我在 stackexchange 上找到了關於如何刪除逗號分隔的 csv 文件的引號之間的逗號的答案(無法在那裡發表評論,因為我沒有所需的代表)。
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