所以從我收集的內容來看,jq 確實支持-f多次使用。但是我不確定這是否是我想要的。
所以我有:
貓.json
{
"cats": [
{
"name": "fluffles",
"age": 10,
"color": "white"
}
]
}
狗.json
{
"dogs": [
{
"name": "sam",
"age": 5,
"color": "black and white"
},
{
"name": "rover",
"age": 2,
"color": "brown and white"
}
]
}
蛇.json
{
"snakes": [
{
"name": "noodles",
"age": 10,
"color": "green"
}
]
}
我能夠合并這個物件:
所有者.json
{
"owners": [
"peter",
"william",
"sally"
]
}
使用
jq -n -f program.jq owners.json $(ls *.json | grep -v 'owners.json')
其中包含jq程式
input as $owners | {$owners, animals: [inputs]}
正如回復中所建議的那樣。
但是,如果我想合并兩個額外的物件,我不確定該怎么做,比如我有:
食物.json
{
"food": [
"meat",
"fish",
"vegetables"
]
}
以及我想要的頂部,導致:
{
"owners": [
"peter",
"william",
"sally"
],
"food": [
"meat",
"fish",
"vegetables"
],
"animals": [
{
"cats": [
{
"name": "fluffles",
"age": 10,
"color": "white"
}
]
},
{
"dogs": [
{
"name": "sam",
"age": 5,
"color": "black and white"
},
{
"name": "rover",
"age": 2,
"color": "brown and white"
}
]
},
{
"snakes": [
{
"name": "noodles",
"age": 10,
"color": "green"
}
]
}
]
}
uj5u.com熱心網友回復:
剛才讀的food.json使用引數--slurpfile food food.json和修改program.jq,包括它:input as $owners | {$owners, food: $food[0].food, animals: [inputs]}。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/324298.html
