jq to podobne do seda narzędzie do obsługi danych JSON - można go używać do wycinania, filtrowania, mapowania i przekształcania danych strukturalnych z taką samą łatwością, z jaką sed, awk, grep i przyjaciele pozwalają bawić się tekstem.
Mam tego Jsona { "users": [ { "first": "Stevie", "last": "Wonder" }, { "first": "Michael", "last": "Jackson" } ] } Za pomocą jq chciałbym wyświetlać imię i nazwisko szeregowo. Tak jak - Stevie Wonder Michael Jackson Tak daleko zaszedłem - jq '.users[].first, .users[].last' Ale wyświetla się "Stevie" "Michael" "Wonder" "Jackson" …
Mam następujący plik json: { "FOO": { "name": "Donald", "location": "Stockholm" }, "BAR": { "name": "Walt", "location": "Stockholm" }, "BAZ": { "name": "Jack", "location": "Whereever" } } Korzystam z jq i chcę uzyskać elementy „name” obiektów, w których „location” to „Stockholm”. Wiem, że mogę uzyskać wszystkie nazwiska cat json | …
Nie mogę się jqzachowywać „normalnie” w potoku powłoki. Na przykład: $ curl -s https://api.github.com/users/octocat/repos | jq | cat powoduje jqpo prostu wydrukowanie tekstu pomocy *. To samo dzieje się, jeśli spróbuję przekierować jqdane wyjściowe do pliku: $ curl -s https://api.github.com/users/octocat/repos | jq > /tmp/stuff.json Czy jqcelowo ratuje się, jeśli stwierdzi, …
curl http://testhost.test.com:8080/application/app/version | jq '.version' | jq '.[]' Powyższe polecenie wyprowadza tylko wartości jak poniżej: "madireddy@test.com" "2323" "test" "02-03-2014-13:41" "application" Jak mogę uzyskać nazwy kluczy zamiast, jak poniżej: email versionID context date versionName
Mam plik json iw tej chwili używam select, aby uzyskać tylko dane spełniające jeden warunek, muszę filtrować na podstawie większej liczby warunków. Na przykład: .[] | select((.processedBarsVolume <= 5) && .processedBars > 0) Jak mogę to zrobić?
Napisałem skrypt do pobierania określonej wartości file.json. Działa, jeśli podam wartość do jq select, ale zmienna wydaje się nie działać (lub nie wiem, jak jej użyć). #!/bin/sh #this works *** projectID=$(cat file.json | jq -r '.resource[] | select(.username=="myemail@hotmail.com") | .id') echo "$projectID" EMAILID=myemail@hotmail.com #this does not work *** no value …
Przepraszam, jeśli przeoczyłem coś bardzo oczywistego; Właśnie znalazłem jqi próbuję go użyć do zaktualizowania jednej wartości JSON bez wpływu na otaczające dane. Chciałbym przesłać curlwynik do jq, zaktualizować wartość i przesłać zaktualizowany kod JSON do pliku curl -X PUT. Coś jak curl http://example.com/shipping.json | jq '.' field: value | curl …
W jaki sposób za pomocą jq można przekonwertować dowolne kodowanie JSON tablicy płytkich obiektów na format CSV? W tej witrynie jest wiele pytań i odpowiedzi, które obejmują określone modele danych, które trwale kodują pola, ale odpowiedzi na to pytanie powinny działać dla dowolnego formatu JSON, z jedynym ograniczeniem, że jest …
Mój plik wejściowy wygląda mniej więcej tak: { "login": "dmaxfield", "id": 7449977, ... } { "login": "dmaxfield", "id": 7449977, ... } Mogę uzyskać wszystkie nazwy logowania za pomocą tego: cat members | jq '.[].login' ale nie udało mi się złamać składni, aby uzyskać zarówno login, jak i identyfikator?
Próbuję jqprzeanalizować strukturę JSON, taką jak: { "a" : 1, "b" : 2, "c" : "{\"id\":\"9ee ...\",\"parent\":\"abc...\"}\n" } Oznacza to, że element w formacie JSON jest ciągiem znaków ze zmienionym kodem JSON. Więc mam coś w stylu $ jq [.c] myFile.json | jq [.id] Ale to się psuje jq: error: …
Używam jq do zabawy z json. Zastanawiałem się, jak warunkowo coś w tym wydrukować. Powiedzmy, że jestem zainteresowany rozmową w terenie geo. Użyłem następującego polecenia i stwierdziłem, że jest tylko jeden wpis, który geoto null: % cat all.json | jq '.geo != null' | sort | uniq -c 1 false …
Właśnie zacząłem od skryptów Bash i natknąłem się na jq do pracy z JSON. Muszę przekształcić ciąg JSON, jak poniżej, na tabelę do wyjścia w terminalu. [{ "name": "George", "id": 12, "email": "george@domain.com" }, { "name": "Jack", "id": 18, "email": "jack@domain.com" }, { "name": "Joe", "id": 19, "email": "joe@domain.com" }] …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.