0

現時点では、JQ を使用して curl 出力を有効な json を含むファイルに正常にエクスポートしています。

コメントは以下の通りです。

jsonValues= <curl command> | jq '.["issues"] | map({key: .key, type: .fields.issuetype.name, typeid: .fields.issuetype.id, status: .fields.status.name, summary: .fields.summary})' > FullClosedIssueList.json; `

この 1 つのコマンドで 2 つのことを行っていることがわかります。

  • すべての結果を に入れjsonValuesます。
  • にエクスポートしていFullClosedIssueList.jsonます。

jsonValuesオブジェクトがフォーマットされていないことがわかりました[]および,.

{
  "key": "ON-12345",
  "type": "Bug",
  "typeid": "1",
  "status": "Closed",
  "summary": "Some Bug Title"
}
{
  "key": "ON-12346",
  "type": "Bug",
  "typeid": "1",
  "status": "Closed",
  "summary": "Some Other Bug Title"
}

ファイル出力は有効なjsonです。

[
  {
    "key": "ON-12345",
    "type": "Bug",
    "typeid": "1",
    "status": "Closed",
    "summary": "Some Bug Title"
  },
  {
    "key": "ON-12346",
    "type": "Bug",
    "typeid": "1",
    "status": "Closed",
    "summary": "Some Other Bug Title"
  }
]

bash変数に渡されるオブジェクトが有効なjsonになるように、JQに追加する必要があるコマンドは何ですか?

編集:これはここで説明されているのと同じ問題です

4

1 に答える 1

2

その中にも「マップ」コマンドが必要です。その中には、選択コマンドを囲む必要があります。

cat FullClosedIssueList.json | jq '.[] | map(select(.typeid=="1"))' 
于 2014-12-16T17:29:06.263 に答える