jq提取git问题



我正试图从git问题中提取问题。期望在选定列中包含数据的csv(甚至每个单元格中接受多个值)

ps:"labels"包含一个以上的类别。

gh issue list --limit 10000 --state all --json number,title,assignees,state,labels,url | jq -r '["number","title","assignees","state","labels","url"], (.[] | [.number, .title, (.assignees | if .|length==0 then "Unassigned" elif .|length>1 then map(.login)|join(",") else .[].login end) , .state, .labels, .url]) | @csv' > issues-$(date '+%Y-%m-%d').csv

得到

jq: error (at:1): object ({"id":"MDU6…)在csv行中无效

由于.labels是一个对象数组,因此需要对其进行处理:

gh issue list --limit 10000 --state all --json number,title,assignees,state,labels,url |
jq -r '["number","title","assignees","state","labels","url"],
(.[] | [.number, .title,
(.assignees | if length==0 then "Unassigned" else map(.login)|join(",") end),
.state,
(.labels | map(.name)|join(",")),
.url
]
) | @csv' > issues-$(date '+%Y-%m-%d').csv

最新更新