jQ:在Windows上将json转换为tsv

时间:2015-05-13 18:09:56

标签: json csv transformation jq

我在Windows机器上使用jq,我有以下数据:

{"a":"Person","birthDay":"12","deathDay":"15", ...}
{"a":"Person","birthDay":"13","deathDay":"16", ...}
...

我希望有一个制表符分隔文件格式:

Person   12   15
Person   13   16

我可以用" .a"来获取值。或" .birhtDay"。但是,如何通过选项卡获取所有值并将它们分开?

亲切的问候, 一团糟

2 个答案:

答案 0 :(得分:3)

幸运的是,与CSV相比,TSV的格式更简单。假设这些值没有换行符或选项卡,您只需要在文件中构建所需的每一行数据,然后通过制表符将它们打印出来。只需确保使用原始输出-r选项。

[ .a, .birthDay, .deathDay ] | join("\t")

答案 1 :(得分:2)

jq的最新版本(例如1.5rc1 - 可通过https://github.com/stedolan/jq/releases获得)包含名为@tsv的过滤器。

4月15日,jq被增强,以便@tsv将产生有效的tsv(每个有效数组一行),例如如果输入字符串包含制表符,换行符或NUL。