Praktyczne przykłady przetwarzania JSON z JQ w Linux

Praktyczne przykłady przetwarzania JSON z JQ w Linux

JQ jest potężnym i elastycznym procesorem JSON dla Linux, zaprojektowanego do parsowania, filtrowania i przekształcania danych JSON. Jego lekki charakter i szybkość sprawiają, że jest to niezbędne narzędzie dla programistów pracujących z plikami JSON. W tym artykule zbadamy, jak korzystać z narzędzia wiersza poleceń JQ do ładnego drukowania plików JSON w Linux, poprawiając czytelność i ulepszanie procesu debugowania.

1. Instalowanie JQ w twoim systemie

Zanim będziesz mógł użyć JQ do ładnego drukowania plików JSON, musisz zainstalować je w dystrybucji Linux. Proces instalacji różni się w zależności od menedżera pakietu używanego przez dystrybucję. Oto kilka przykładów:

  • Dla systemów opartych na debian (e.G., Ubuntu), użyj Menedżera pakietów Apt:
    Aktualizacja sudo apt  sudo apt instal JQ  
  • Dla systemów opartych na RHEL (e.G., Centos, Fedora), użyj Menedżera pakietu Yum:
    sudo yum instaluj JQ  
  • W przypadku Arch Linux użyj menedżera pakietów Pacman:
    sudo pacman -s jq  

2. Ładne drukowanie plików JSON z JQ

Po zainstalowaniu JQ w systemie możesz użyć go do ładnego drukowania plików JSON, wykonując następujące kroki:

  • Otwórz terminal i przejdź do katalogu zawierającego plik JSON, który chcesz wydrukować.
  • Wykonaj następujące polecenie, zastępując wejście.JSON z nazwą pliku JSON:
    JQ '.' wejście.JSON  
  • JQ będzie wydrukować plik JSON na terminalu. Jeśli chcesz zapisać dane wyjściowe w nowym pliku, użyj następującego polecenia:
    JQ '.' wejście.JSON> Wyjście.JSON  

3. Filtrowanie i transformacja danych JSON za pomocą JQ

Oprócz ładnego drukowania plików JSON, JQ oferuje szeroki zakres opcji filtrowania i transformacji danych JSON. Oto kilka przykładów:

  • Wyodrębnij określoną wartość z obiektu JSON:
    JQ '.Klucz „Wejście.JSON  
  • Filtruj tablicę obiektów na podstawie określonego warunku:
    JQ '.[] | wybierać(.Wiek> 30) „Wejście.JSON  
  • Mapuj i przekształć tablicę obiektów:
    JQ '.[] | nazwa: .imię Wiek: .wiek „dane wejściowe.JSON  
  • Łańcz wiele filtrów i transformacji razem:
    JQ '.[] | wybierać(.Wiek> 30) | nazwa: .imię Wiek: .wiek „dane wejściowe.JSON  

4. Integracja JQ z skontaktami

JQ można łatwo zintegrować ze skryptami Shell, aby zautomatyzować zadania przetwarzania JSON. Oto przykład prostego skryptu powłoki, który Pretty drukuje plik JSON i filtruje dane na podstawie danych wejściowych użytkownika:

#!/bin/bash if [-z "$ 1"]; Następnie echo „Zastosowanie: 0 $” wyjście 1 Fi Echo „Wprowadź minimalny wiek:„ Przeczytaj min_age JQ ”.[] | wybierać(.wiek> = $ min_age) „„ 1 $ ”
1234567891011#!/bin/bash if [-z "$ 1"]; Następnie echo „Zastosowanie: 0 USD” EXIT 1FI Echo „Wprowadź minimalny wiek:„ Przeczytaj min_age JQ ”.[] | wybierać(.wiek> = $ min_age) „„ 1 $ ”

Wniosek

JQ jest nieocenionym narzędziem dla programistów, którzy często pracują z danymi JSON. Jego zdolność do ładnego drukowania plików JSON, wraz z szeroko zakrojonymi funkcjami filtrowania i transformacji, sprawiają, że jest to niezbędne narzędzie w każdym zestawie narzędzi programisty Linux. Opanowując narzędzie linii poleceń JQ, możesz usprawnić zadania przetwarzania JSON i poprawić ogólną wydajność przepływu pracy.