Top 10 des commandes JQ que chaque développeur Linux devrait savoir

Top 10 des commandes JQ que chaque développeur Linux devrait savoir

JQ est un processeur JSON en ligne de commande polyvalente pour Linux qui permet aux développeurs d'analyser, filtrer et transformer les données JSON rapidement et efficacement. Ses fonctionnalités puissantes en font un outil indispensable pour tous ceux qui travaillent avec des fichiers JSON sur les systèmes Linux. Dans cet article, nous couvrirons les 10 principales commandes JQ essentielles que chaque développeur Linux devrait savoir pour rationaliser ses tâches de traitement JSON.

Exemple de contenu de fichier JSON

Pour ce tutoriel, vous pouvez utiliser l'exemple suivant JSON DATA dans un fichier nommé saisir.json. Ces données JSON représentent un éventail de personnes avec leurs noms, âges, pays et adresses respectifs:

["Name": "Alice", "Age": 35, "Country": "USA", "Adresse": "Street": "123 Main St", "City": "New York", "État ":" NY "," Zip ":" 10001 ", " Name ":" Bob "," Age ": 28," Country ":" Canada "," Adresse ": " Street ":" 456 Maple Ave "," City ":" Toronto "," Province ":" On "," Postal_code ":" M5V 1A1 ", " Name ":" Charlie "," Age ": 42," Country ": "USA", "Adresse": "Street": "789 Oak St", "City": "San Francisco", "State": "Ca", "Zip": "94102", "Name" : "David", "Age": 23, "Country": "Canada", "Adresse": "Street": "321 Pine St", "City": "Vancouver", "Province": "BC", "postal_code": "v6b 2p4"]
1234567891011121314151617181920212223242526272829303132334353637383940414243444546["Name": "Alice", "Age": 35, "Country": "USA", "Adresse": "Street": "123 Main St", "City": "New York", "État ":" NY "," Zip ":" 10001 ", " Name ":" Bob "," Age ": 28," Country ":" Canada "," Adresse ": " Street ":" 456 Maple Ave "," City ":" Toronto "," Province ":" On "," Postal_code ":" M5V 1A1 ", " Name ":" Charlie "," Age ": 42," Country ": "USA", "Adresse": "Street": "789 Oak St", "City": "San Francisco", "State": "Ca", "Zip": "94102", "Name" : "David", "Age": 23, "Country": "Canada", "Adresse": "Street": "321 Pine St", "City": "Vancouver", "Province": "BC", "postal_code": "v6b 2p4"]

Enregistrer ce contenu JSON dans un fichier nommé "saisir.JSON " et utilisez-le comme entrée pour les différentes commandes JQ dans le tutoriel. Cet exemple de données vous aidera à mieux comprendre et pratiquer les différentes commandes et techniques JQ décrites dans l'article.

10 Exemples de commande JQ pour les développeurs Linux

  1. Jolies données JSON à imprimer
  2. Pour imprimer de jolies données JSON, passez simplement le fichier JSON à la commande jq suivi d'une période (.):

    JQ '.' saisir.json  

  3. Récupérer une clé JSON spécifique
  4. Pour extraire la valeur d'une clé spécifique à partir d'un objet JSON, utilisez la syntaxe suivante:

    JQ '.Entrée de clé.json
    1JQ '.Entrée de clé.json

    Par exemple, pour extraire la valeur du "nom" clé, utilisation:

    JQ '.Nom 'Entrée.json  

  5. Accéder aux valeurs JSON imbriquées
  6. Pour accéder aux valeurs JSON imbriquées, utilisez le point (.) Notation:

    JQ '.clé 1.clé2.Entrée Key3 '.json
    1JQ '.clé 1.clé2.Entrée Key3 '.json

    Par exemple, pour extraire la valeur du "ville" clé imbriquée sous "adresse", utiliser:

    JQ '.adresse.Antrée en ville.json  

  7. Itérer sur les tableaux JSON
  8. Utilisez les crochets ([]) pour itérer sur les tableaux JSON:

    JQ '.[]' saisir.json  

    Pour extraire des clés spécifiques de chaque objet dans le tableau, utilisez le tuyau (|) Opérateur:

    JQ '.[] | .Entrée de clé.json  

  9. Filtre les données JSON
  10. Pour filtrer les données JSON en fonction de conditions spécifiques, utilisez la fonction sélectionnée:

    JQ '.[] | sélectionner(.key == "valeur") 'entrée.json
    1JQ '.[] | sélectionner(.key == "valeur") 'entrée.json

    Par exemple, pour filtrer les objets dans un tableau avec un "âge" plus grand que 30, utiliser:

    JQ '.[] | sélectionner(.Âge> 30) 'Entrée.json  

  11. Carte et transformer les données JSON
  12. Pour cartographier et transformer les données JSON, utilisez les accolades bouclées ():

    JQ '.[] | key1: .Key1, Key2: .Key2 'entrée.json
    1JQ '.[] | key1: .Key1, Key2: .Key2 'entrée.json

    Par exemple, pour créer un nouvel objet JSON avec seulement le "nom" et "âge" Clés, utilisation:

    JQ '.[] | nom: .nom Age: .Âge 'entrée.json  

  13. Combiner plusieurs fichiers JSON
  14. Pour fusionner deux fichiers JSON, utilisez le * opérateur:

    JQ -S '.[0] * .[1] 'Fichier1.json file2.json  

  15. Effectuer des opérations arithmétiques
  16. JQ peut effectuer des opérations arithmétiques sur des valeurs JSON numériques:

    JQ '.numéro 1 + .entrée numéro2 '.json
    1JQ '.numéro 1 + .entrée numéro2 '.json

    Par exemple, pour calculer la somme de deux nombres dans un fichier JSON, utilisez:

    JQ '.numéro 1 + .entrée numéro2 '.json  

  17. Trier les données JSON
  18. Pour trier les données JSON en fonction d'une clé spécifique, utilisez le 'Trier par' fonction:

    JQ '.[] | Trier par(.clé) 'entrée.json
    1JQ '.[] | Trier par(.clé) 'entrée.json

    Par exemple, pour trier un tableau d'objets par le "âge" clé, utilisation:

    JQ '.[] | Trier par(.Âge) 'Entrée.json  

  19. Groupes de données JSON
  20. Pour regrouper les données JSON en fonction d'une clé spécifique, utilisez le 'par groupe' fonction:

    JQ 'Group_By (.clé) 'entrée.json
    1JQ 'Group_By (.clé) 'entrée.json

    Par exemple, pour regrouper un tableau d'objets par le "pays" clé, utilisation:

    JQ 'Group_By (.pays) 'entrée.json  

Conclusion

Ces 10 meilleures commandes JQ essentielles offrent une base solide pour les développeurs Linux travaillant avec des fichiers JSON. La maîtrise de ces commandes vous aidera à analyser, filtrer et manipuler plus efficacement les données JSON, améliorant finalement votre flux de travail de développement.

Au fur et à mesure que vous gagnez de l'expérience avec JQ, vous découvrirez des fonctionnalités et des techniques encore plus avancées qui répondent à vos besoins spécifiques. L'outil de ligne de commande JQ est un atout inestimable pour tout développeur travaillant avec les données JSON sur les systèmes Linux, et la connaissance de ces éléments essentiels servira de point de départ fort dans votre parcours pour devenir un utilisateur de Power JQ.

Pour étendre davantage vos connaissances JQ, envisagez de plonger dans la documentation officielle de JQ (https: // Stedolan.github.IO / JQ / Manual /) et exploration des ressources communautaires, telles que des tutoriels, des articles de blog et des forums. Alors que vous continuez à aiguiser vos compétences JQ, vous débloquerez le plein potentiel de cet outil de traitement JSON puissant, ce qui en fait une partie intégrante de votre boîte à outils de développement Linux.