jQ:在 Windows 上将 json 转换为 tsv
jQ: transforming json to tsv on Windows
我在 windows 机器上使用 jq,我有以下数据:
{"a":"Person","birthDay":"12","deathDay":"15", ...}
{"a":"Person","birthDay":"13","deathDay":"16", ...}
...
我想要一个制表符分隔的文件格式:
Person 12 15
Person 13 16
我可以用“.a”或“.birhtDay”获取值。但是如何获取所有值并通过选项卡将它们分开?
亲切的问候,
乱七八糟
幸运的是,与 CSV 相比,TSV 是一种更简单的格式。假设这些值没有换行符或制表符,您只需要在文件中构建您想要的每一行数据,然后将它们打印出来,用制表符分隔值。只需确保使用原始输出 -r
选项即可。
[ .a, .birthDay, .deathDay ] | join("\t")
最新版本的 jq(例如 1.5rc1 -- 可通过 https://github.com/stedolan/jq/releases 获得)包含一个名为 @tsv
.
的过滤器
4 月 15 日,jq 得到增强,@tsv 将生成有效的 tsv(每个有效数组一行),例如如果输入字符串包含制表符、换行符或 NUL。
我在 windows 机器上使用 jq,我有以下数据:
{"a":"Person","birthDay":"12","deathDay":"15", ...}
{"a":"Person","birthDay":"13","deathDay":"16", ...}
...
我想要一个制表符分隔的文件格式:
Person 12 15
Person 13 16
我可以用“.a”或“.birhtDay”获取值。但是如何获取所有值并通过选项卡将它们分开?
亲切的问候, 乱七八糟
幸运的是,与 CSV 相比,TSV 是一种更简单的格式。假设这些值没有换行符或制表符,您只需要在文件中构建您想要的每一行数据,然后将它们打印出来,用制表符分隔值。只需确保使用原始输出 -r
选项即可。
[ .a, .birthDay, .deathDay ] | join("\t")
最新版本的 jq(例如 1.5rc1 -- 可通过 https://github.com/stedolan/jq/releases 获得)包含一个名为 @tsv
.
4 月 15 日,jq 得到增强,@tsv 将生成有效的 tsv(每个有效数组一行),例如如果输入字符串包含制表符、换行符或 NUL。