gpt4 book ai didi

json - 在jq中使用CSV输出时如何将数组组合成单个字符串值?

转载 作者:行者123 更新时间:2023-12-04 05:05:58 24 4
gpt4 key购买 nike

我有以下 jq命令:

cat myFile.json | jq -r '.tickets[] | [.created_at, .id, .via.channel, .tags[]] | @csv'

它输出一行,例如:
"2016-02-02T10:00:00Z",99999,"web","tag1","tag2","tag3","tag4"

我正在尝试 join .tags[]数组,这样我就可以得到:
"2016-02-19T13:25:55Z",99999,"web","tag1,tag2,tag3,tag4"

我尝试了一些事情,例如
cat myFile.json | jq -r '.tickets[] | [.created_at, .id, .via.channel, (.tags[] | join(","))] | @csv'

但它给出了错误,例如
jq: error (at <stdin>:0): Cannot iterate over string ("tag1...)

那么,如何加入 .tags[]在上面的命令中,而不是单独的字段,我得到一个字符串值(其中包含逗号分隔的标记值)?

最佳答案

您需要调用join()tags列表,而不是单个标签。尝试:

jq -r '.tickets[] | [.created_at, .id, .via.channel, (.tags | join(","))] | @csv'

关于json - 在jq中使用CSV输出时如何将数组组合成单个字符串值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45165303/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com