У меня есть json файл со следующим содержимым:
{
"stuff": {
"usfull": [
"aa",
"bb",
"cc",
"dd"
],
"usefulAsWell": [
"ab",
"cd",
"ef",
"gh"
],
"waste": [
"12",
"34",
"56"
],
"moreWaste": [
"78"
]
}
}
Мне нужен простой список пунктов «полезный» и «полезный». Я не знаю, будут ли добавлены более полезные элементы позже, но я знаю, какие элементы являются ненужными, и хочу, чтобы они были включены вместо простого перечисления полезных.
С помощью следующей команды я уже получил список, но он по-прежнему содержит символы формата, такие как [], "
cat example.json | jq -r '.stuff | del(.waste,.moreWaste) | .[]'
[
"aa",
"bb",
"cc",
"dd"
]
[
"ab",
"cd",
"ef",
"gh"
]
С помощью следующей команды я получаю хороший список, но, к сожалению, он содержит пустые слова:
cat example.json | jq -r '.stuff[] | .[]'
aa
bb
cc
dd
ab
cd
ef
gh
12
34
56
78
При попытке добавить часть удаления, я получаю сообщение об ошибке:
cat example.json | jq -r '.stuff[] | del(.waste,.moreWaste) | .[]'
jq: error (at <stdin>:24): Cannot index array with string "waste"
Любая идея на этот топи c?
Заранее спасибо!