如何使用JQ连接json中的数组
尝试合并行。这是来源如何使用JQ连接json中的数组,json,windows,batch-file,export-to-csv,jq,Json,Windows,Batch File,Export To Csv,Jq,尝试合并行。这是来源 { "movie_results": [ { "genre_ids": [ 28, 35, 80 ], "id": 96, } ] 这是我的命令行 C:\WINDOWS\system32>curl "https://api.themoviedb.org/3/find/tt0092644?&external_source=imdb_id" | jq -r
{
"movie_results": [
{
"genre_ids": [
28,
35,
80
],
"id": 96,
}
]
这是我的命令行
C:\WINDOWS\system32>curl "https://api.themoviedb.org/3/find/tt0092644?&external_source=imdb_id" | jq -r ".movie_results[] | .id, (.genre_ids | join(\",\"))
我得到以下结果
96
28,35,80
我如何制作它
96,28,35,80
?顺便说一句,我在windows命令行上执行此操作,对jq过滤器稍加调整即可:
C:\WINDOWS\system32>curl "https://api.themoviedb.org/3/find/tt0092644?&external_source=imdb_id" | jq -r ".movie_results[] | .id, (.genre_ids | join(\",\"))
.movie_results[] | [.id, .genre_ids[]] | join(",")
(上面的一行没有考虑shell转义特殊字符的规则。您是否考虑过使用-f命令行选项来避免此类问题?)
替代方案
下面是一个避免在过滤器中使用双引号(“
)的替代方法:
.movie_results[] | [.id] + .genre_ids | @csv