【发布时间】:2021-02-20 02:01:04
【问题描述】:
我想使用 bash 命令行更改 CSV 中特定单元格的值。
我有一个 Sellers.csv:
seller_id,seller_zip_code_prefix,seller_city,seller_state
3442f8959a84dea7ee197c632cb2df15,13023,campinas,SP
723a46b89fd5c3ed78ccdf039e33ac63,93310,novo hamburgo, rio grande do sul, brasil,RS
如您所见,第 3 行第 3 列 (seller_city) 违反了规则,因为它包含逗号。这就是 MySQL 说“第 3 行包含的数据多于输入列”的原因。
我想将novo hamburgo, rio grande do sul, brasil 更改为novo hamburgo rio grande do sul brasil。
我试过awk,但它说我提供了错误的论点。
awk -v r=553 -v c=3 -v val="novo hamburgo - rio grande do sul - brasil" -F sellers.csv
awk:选项需要一个参数 -- F
【问题讨论】:
-
-F选项有什么用?文档是怎么说的? -
-F 是字段分隔符赋值。