-- Leo's gemini proxy

-- Connecting to unbon.cafe:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini;

Utilitaire jq


2023-02-20


jq est un utilitaire en ligne de commande, programmé en C (le rendant extrêmement rapide), destiné à la manipulation de fichiers JSON et dérivés.


Il permet notamment de transformer – relativement facilement – des fichiers geojson en csv via une commande au format :


`jq -r 'map({clé1, clé2}) | @csv' input.json > output.csv`


Dans l’ordre :


`-r` indique de traiter le fichier JSON sous « format brut », en enlevant les guillemets ;

`map({clé1, clé2})` sont les clés d’intérêt à extraire ;

`@csv` précise le format de sortie désiré.


Exemple pour la conversion d’un fichier geojson avec les champs email et contact:email – à noter l’usage de guillemets du au caractère : utilisé – comme propriétés de `features` :


`jq -r '.features | map(.properties.email, .properties."contact:email") | @csv' input.geojson > output.csv`


Une des particularités de la méthode est de produire un fichier csv en ligne, pour les inverser il est possible d’ajouter des étapes supplémentaires :


jq -r '.features | map(.properties.email") | to_entries[] | [.[]] | @csv' email.geojson > output.csv


Cette méthode ne fonctionne qu’avec une seule clé à la fois – sinon tout est dédoublé, il faudrait voir d’où ça vient –, où :


`to_entries` transforme les paires de clé-valeur en `clé: k, valeur: v` ;

`[.[]]` est un argument obscur sans lequel une erreur survient.

-- Response ended

-- Page fetched on Sun May 19 01:16:13 2024