Я нашел ответ о том, как удалить запятые между кавычками в 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