Skip to content

JSON PATH

JSON PATH jest to język przeglądania dokumentów typu .json. Za pomocą tego języka możliwe jest wyświetlanie w łatwiejszy sposób konkretnych parametrów z pliku .json.

Przykłady

Lista z dwoma słownikami

Plik w formacie json:

[
    {
        "model": "C360",
        "producer": "Ursus"
    },
    {
        "model": "C330",
        "producer": "Ursus"
    }
]

Przykładowe zapytania:

Wyświetlenie modelu z pierwszego słownika:

cat <file_path>.json | jpath $[0].model

Rezultat:

[ "C360" ]

Wyświetlenie wszystkich modeli:

cat <file_path>.json | jpath $[*].model

Rezultat:

[ "C360", "330" ]

Słowniki

Przykład 2.

Plik w formacie JSON

{
    "property1": "value1",
    "property2": "value2"
}

Wyświetlenie wartości słownika

cat <file_path>.json | jpath '$[*]'

Rezultat

[
  "value1",
  "value2"
]

Przykład 3.

Plik w formacie JSON

{
    "car": {
        "color": "blue",
        "price": "$20,000",
        "wheels": [
            {
                "model": "KDJ39848T",
                "location": "front-right"
            },
            {
                "model": "MDJ39485DK",
                "location": "front-left"
            },
            {
                "model": "KCMDD3435K",
                "location": "rear-right"
            },
            {
                "model": "JJDH34234KK",
                "location": "rear-left"
            }
        ]
    },
    "bus": {
        "color": "white",
        "price": "$120,000",
        "wheels": [
            {
                "model": "BBBB39848T",
                "location": "front-right"
            },
            {
                "model": "BBBB9485DK",
                "location": "front-left"
            },
            {
                "model": "BBBB3435K",
                "location": "rear-right"
            },
            {
                "model": "BBBB4234KK",
                "location": "rear-left"
            }
        ]
    }
}

Wyświetlenie tylko modeli opon (pole wheels.model)

cat <file_name>.json | jpath '$[*].wheels[*].model'

Rezultat

[
  "KDJ39848T",
  "MDJ39485DK",
  "KCMDD3435K",
  "JJDH34234KK",
  "BBBB39848T",
  "BBBB9485DK",
  "BBBB3435K",
  "BBBB4234KK"
]