Uruchom następujące polecenie, aby zainstalować JQ na Ubuntu.
$ sudo apt-get instaluj JQ
Czytanie danych JSON
Załóżmy, że zadeklarowałeś zmienną JSON o nazwie Jsondata w terminalu i uruchom JQ polecenie z tą zmienną do wydrukowania treści tej zmiennej.
$ Jsondata = '[„book”: „php 7”, „Publication”: „Apress”,Czytanie danych JSON z opcją -c
-Opcja C używa polecenia JQ do wydrukowania każdego obiektu JSON w każdym wierszu. Po uruchomieniu następującego polecenia każdy obiekt zmiennej JSondata zostanie wydrukowany.
$ echo "$ jsondata" | JQ -C '.[] 'Czytanie pliku JSON
Polecenie JQ może być również używane do odczytu pliku JSON. Utwórz plik JSON o nazwie Studenci.JSON z następującą zawartością, aby przetestować następne polecenia tego samouczka.
Uruchom następujące polecenie, aby przeczytać uczniów.plik JSON.
$ jq '.„Studenci.JSONCzytanie pliku JSON z „|”
Możesz użyć „|” symbol w następujący sposób do odczytania dowolnego pliku JSON.
$ CAT Studenci.JSON | JQ '.'Czytanie wartości pojedynczych kluczowych
Możesz łatwo odczytać dowolny konkretny obiekt z pliku JSON za pomocą JQ Komenda. W Studenci.JSON, Istnieją cztery obiekty. To są Roll, Nazwa, partia i dział. Jeśli chcesz przeczytać wartość dział Klucz tylko z każdego rekordu, a następnie uruchom JQ polecenie w następujący sposób.
$ jq '.[] | .studenci działu.JSONCzytanie wielu kluczy
Jeśli chcesz odczytać dwie lub więcej wartości obiektów z danych JSON, wspomnij o nazwach obiektów, oddzielając przecinek (,) w poleceniu JQ. Następujące polecenie odzyska wartości nazwa I dział Klucze.
$ jq '.[] | .nazwa, .studenci działu.JSONUsuń klucz z danych JSON
JQ Polecenie jest używane nie tylko do odczytu danych JSON, ale także do wyświetlania danych poprzez usunięcie konkretnego klucza. Następujące polecenie wydrukuje wszystkie kluczowe wartości Studenci.JSON plik wykluczając seria klucz. mapa I del funkcja jest używana w JQ polecenie wykonania zadania.
$ jq 'mapa (del (.partia)) „Studenci.JSONWartości mapowania
Bez usuwania klucza z danych JSON, możesz użyć funkcji mapy z poleceniem JQ do różnych celów. Wartości liczbowe danych JSON można zwiększyć lub zmniejszyć przez funkcję MAP. Utwórz plik JSON o nazwie Numer.JSON z następującą zawartością, aby przetestować następne polecenia.
[40,34,12,67,45]Uruchom następujące polecenie, aby dodać 10 z każdą wartością obiektu z Liczby, Json.
Mapa $ JQ (.+10) „Liczby.JSONUruchom następujące polecenie, aby odjąć 10 od każdej wartości obiektu z Liczby, Json.
Mapa $ JQ (.-10) „Liczby.JSONWyszukiwanie wartości według indeksu i długości
Możesz odczytać obiekty z pliku JSON, określając konkretny indeks i długość. Utwórz plik JSON o nazwie zabarwienie.JSON z następującymi danymi.
[„Czerwony”, „zielony”, „niebieski”, „żółty”, „fioletowy”]Uruchom następujące polecenie, aby odczytać dwie wartości, zaczynając od trzeciego indeksu kolorów.plik JSON.
$ jq '.[2: 4] kolory.JSONMożesz określić długość lub indeks początkowy do odczytu danych z pliku JSON. W poniższym przykładzie liczba wartości danych jest podana tylko. W takim przypadku polecenie odczytuje cztery dane z pierwszego indeksu kolorów.JSON.
$ jq '.[: 4] „Kolory.JSONMożesz określić punkt początkowy tylko bez żadnej wartości JQ polecenie i wartość mogą być dodatnie lub ujemne. Jeśli punkt początkowy jest dodatni, wskaźnik będzie się liczył od lewej strony listy i zaczyna się od zera. Jeśli punkt początkowy jest ujemny, indeks będzie się liczył z prawej strony listy i zaczynając od jednego. W poniższym przykładzie punkt początkowy to -3. Tak więc wyświetlą się trzy ostatnie wartości z danych.
$ jq '.[-3:] „kolory.JSONKiedy będziesz pracować z danymi JSON i chcesz przeanalizować lub manipulować danymi zgodnie z Twoimi wymaganiami, polecenie JQ pomoże ci ułatwić zadanie.