1
기존에 추가 내가새로운 배열이 이미 JSON 파일 JQ 강타
{
"firsttag": {
"secondtag": [
{
"thirdtag": [
{
"someothertag": [
{
"sample":"else"
},
{
"targetBlank": true,
}
],
"interestingtag": [
{
"refId": "A",
"target": "abc",
},
{
"refId": "B",
"target": "bbb",
},
{
"refId": "C",
"target": "ccc",
}
],
},
},
"overwrite": true
}
내 JSON 구문이 완벽하지 않을 수 있습니다 다음과 같은 큰 JSON을 가정하지만 몇 가지 물건을 편집 한 becuase 때문입니다. 이제 내가하고 싶은 것은 interestingtag
에 다른 입력과 비슷한 다른 입력을 추가하고 싶습니다. 예를 들어, 나는 그것을 좋아한다.
"interestingtag": [
{
"refId": "A",
"target": "abc"
},
{
"refId": "B",
"target": "bbb"
},
{
"refId": "C",
"target": "ccc"
},
{
"refId": "D",
"target": "ddd"
}
],
그러나 나는 그것을하는 방법을 이해할 수 없다. 나는 간단한
jq '.firsttag.secondtag[0].thirdtag[0].interestingtag + {"refId": "D", "refID": "C"}' myfile.json
을하려고 할 때 내가이 작업을 수행 할 수있는 방법
jq: error: array and object cannot be added
어떤 생각을
jq '.firsttag.secondtag[0].thirdtag[0].interestingtag' myfile.json
를 사용하여 올바른 위치를 검색하지만 할 수 있습니까? 아니면 내가 뭘 잘못하고있는거야?
도움 주셔서 감사합니다.
브릴리언트에서 설명한대로
|= .+ [...]
을 사용하여 배열을 병합하려고합니다. 귀하의 링크를 통해 살펴 봤지만 [] 내에 배열을 추가 할 수 있는지 확실하지 않았습니다. 이 게시물은 단 하나의 가치에 대해서만 이야기했습니다. 고마워, 매력처럼 일 했어! –배열을 업데이트하여'| = '배열에 추가하지 말고. + [...]', 그냥 배열에 추가 :'+ = [...]' –