Powiedz, że mam następujący JSON, przechowywany w mojej zmiennej jsonVariable.jq - Jak wydrukować nadrzędną wartość obiektu, gdy jestem już głęboko w obiektach potomnych obiektu?
{
"id": 1,
"details": {
"username": "jamesbrown",
"name": "James Brown",
}
}
I przeanalizować ten JSON z JQ stosując następujący:
echo $jsonVariable | jq '.details.name | select(.name == "James Brown")'
To da mi wyświetlamy
Jamesa Browna
ale co, jeśli chcę, aby uzyskać id tej osoby również? Teraz zdaję sobie sprawę, że jest to trudny i prosty przykład - program, nad którym pracuję w tej chwili, ma 5 lub 6 poziomów głębokości z wieloma różnymi funkcjami JQ innymi niż wybrane. Potrzebuję sposobu, aby wybrać pole rodzica, gdy mam już 5 lub 6 warstw głębokości po przeprowadzeniu różnych metod filtrowania.
Czy ktoś może pomóc? Czy istnieje sposób "odwrotu", z powrotem do rodzica? (Nie wiem, czy mam sensu!)
wydaje się, że chcesz ".id | select (.name == "James Brown") 'Czy próbowałeś tego? – mrtig
Ach, przepraszam, nie wyjaśniłem poprawnie. Chciałbym mieć zarówno – Xenidious