【发布时间】:2018-10-15 10:35:43
【问题描述】:
我有一个 JSON 文件 in.txt,其中包含 {"k1":"v1","k2":"v2"} 之类的行,我想从它创建一个带有行 v1,v2 的 CSV 文件 out.txt。 JSON 文件可能包含超过 10 个键/值对,因此我更喜欢不需要在输入命令中指定每个键的解决方案。
到目前为止,我找到了这个命令:
jq -r '[.[]] | @csv' in.txt > out.txt
生成带有行的输出文件:"v1","v2"。我怎样才能摆脱双引号?
更新:我可以使用sed 删除双引号,如下所示,但我仍然有兴趣使用 jq 找到解决方案:
jq -r '[.[]] | @csv' in.txt | sed -e 's/\"//g' > out.txt
【问题讨论】:
-
给定一个合适的 CSV 解析器,
"v1","v2"和v1,v2是等价的。你为什么在乎?
标签: json csv export-to-csv jq