Exécutez la commande suivante pour installer JQ sur Ubuntu.
$ sudo apt-get install jq
Lire les données JSON
Supposons que vous ayez déclaré une variable JSON nommée Jsondata dans le terminal et courir jq Commande avec cette variable pour imprimer le contenu de cette variable.
$ JSondata = '["Book": "Php 7", "Publication": "apress",Lire les données JSON avec l'option -c
-C Option utilise avec la commande jq pour imprimer chaque objet JSON dans chaque ligne. Après avoir exécuté la commande suivante, chaque objet de la variable JSondata sera imprimé.
$ echo "$ jSondata" | JQ -C '.[] 'Lire un fichier JSON
La commande JQ peut également être utilisée pour lire le fichier JSON. Créer un fichier JSON nommé étudiants.JSON avec le contenu suivant pour tester les commandes suivantes de ce tutoriel.
Exécutez la commande suivante pour lire les étudiants.fichier json.
$ JQ '.' Étudiants.jsonLire le fichier JSON avec '|'
Vous pouvez utiliser '|' Symbole de la manière suivante pour lire n'importe quel fichier JSON.
$ étudiants chat.JSON | JQ '.'Lire des valeurs de clés uniques
Vous pouvez facilement lire un objet particulier à partir d'un fichier JSON en utilisant jq commande. Dans Étudiants.json, Il y a quatre objets. Ceux-ci sont rouleau, nom, lot et département. Si vous souhaitez lire la valeur de département La clé uniquement à partir de chaque enregistrement puis l'exécution jq commande de la manière suivante.
$ JQ '.[] | .Étudiants du département.jsonLire plusieurs clés
Si vous souhaitez lire deux ou plusieurs valeurs d'objet à partir des données JSON, mentionnez les noms d'objets en séparant la virgule (,) dans la commande JQ. La commande suivante récupérera les valeurs de nom et département clés.
$ JQ '.[] | .nom, .Étudiants du département.jsonSupprimer la clé des données JSON
jq La commande est utilisée non seulement pour lire les données JSON mais aussi pour afficher les données en supprimant la clé particulière. La commande suivante imprimera toutes les valeurs clés de Étudiants.json dossier en excluant grouper clé. carte et del La fonction est utilisée dans jq commande pour faire la tâche.
$ JQ 'Map (del (.lot)) 'étudiants.jsonValeurs de cartographie
Sans supprimer la clé des données JSON, vous pouvez utiliser la fonction MAP avec la commande JQ à diverses fins. Les valeurs numériques des données JSON peuvent être augmentées ou diminuées par la fonction de carte. Créer un fichier JSON nommé Nombre.json avec le contenu suivant pour tester les commandes suivantes.
[40,34,12,67,45]Exécutez la commande suivante pour ajouter 10 avec chaque valeur d'objet de Nombres, JSON.
$ JQ 'Map (.+10) 'Nombres.jsonExécutez la commande suivante pour soustraire 10 de chaque valeur d'objet de Nombres, JSON.
$ JQ 'Map (.-10) 'Nombres.jsonRecherche de valeurs par index et longueur
Vous pouvez lire des objets à partir du fichier JSON en spécifiant l'index et la longueur particuliers. Créer un fichier JSON nommé couleurs.json avec les données suivantes.
["Rouge", "vert", "bleu", "jaune", "violet"]Exécutez la commande suivante pour lire deux valeurs à partir du troisième index des couleurs.fichier json.
$ JQ '.[2: 4] 'Couleurs.jsonVous pouvez spécifier la longueur ou le démarrage de l'index pour lire les données du fichier JSON. Dans l'exemple suivant, le nombre de valeurs de données est donné uniquement. Dans ce cas, la commande lira quatre données du premier index des couleurs.json.
$ JQ '.[: 4] 'Couleurs.jsonVous ne pouvez spécifier le point de départ que sans aucune valeur de longueur dans jq la commande et la valeur peuvent être positives ou négatives. Si le point de départ est positif, l'index comptera du côté gauche de la liste et à partir de zéro. Si le point de départ est négatif, l'indice comptera du côté droit de la liste et à partir d'un. Dans l'exemple suivant, le point de départ est -3. Ainsi, les trois dernières valeurs des données afficheront.
$ JQ '.[-3:] 'Couleurs.jsonLorsque vous travaillerez avec les données JSON et que vous souhaitez analyser ou manipuler les données en fonction de vos exigences, la commande JQ vous aidera à vous faciliter la tâche.