单行从jq获取输出 [英] Get outputs from jq on a single line

查看:116
本文介绍了单行从jq获取输出的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我得到的输出如下: https://stackoverflow.com/a/40330344

 (.issues[] | {key, status: .fields.status.name, assignee: .fields.assignee.emailAddress})

输出:

 {  
   "key": "SEA-739",
   "status": "Open",
   "assignee": null
 }
 {
   "key": "SEA-738",
   "status": "Resolved",
   "assignee": "user2@mycompany.com"
 }

但是我需要解析每一行,但是就密钥组而言,很难确定哪个受让人是哪个密钥的.可以用jq做成一束吗?

But I need to parse each and every line but it's tough to identify which assignee is for which key as far as key group is concerned. Is this possible to make one bunch in one row using jq?

预期输出:

{ "key": "SEA-739", "status": "Open", "assignee": null }
{ "key": "SEA-738", "status": "Resolved", "assignee": "user2@mycompany.com"}

OR

{ "SEA-739", "Open", null }
{ "SEA-738", "Resolved", user2@mycompany.com }

推荐答案

-c 是您可能需要的

-c is what you likely need

使用您在上面发布的输出,可以对其进行进一步处理:

Using the output you posted above, you can process it further:


jq -c . input

给予;

{"key":"SEA-739","status":"Open","assignee":null}
{"key":"SEA-738","status":"Resolved","assignee":"user2@mycompany.com"}

或者您可以只更改原始命令

Or you can just change your original command

FROM


jq -r '(.issues[] | {key, status: .fields.status.name, assignee: .fields.assignee.emailAddress})'

TO

jq -c '(.issues[] | {key, status: .fields.status.name, assignee: .fields.assignee.emailAddress})'

这篇关于单行从jq获取输出的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆