[Shell] Recherché valeur dans fichier => variable
Résolu
Raph04
Messages postés
182
Statut
Membre
-
dubcek Messages postés 18627 Date d'inscription Statut Contributeur Dernière intervention -
dubcek Messages postés 18627 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je ne connais pas bien le shell, et je dois modifier un script.
J'aimerai pouvoir recupérer dans une variable dans un fichier.
Le fichier ressemble à ça :
Je souhaiterai pouvoir récupérer une valeur en donnant un le label.
Pourriez-vous m'aider ?
Je ne connais pas bien le shell, et je dois modifier un script.
J'aimerai pouvoir recupérer dans une variable dans un fichier.
Le fichier ressemble à ça :
{
"Label1": "Valeur1",
"Label2": "Valeur2",
"Label3": "Valeur3",
[...]
"LabelX": "ValeurX"
}
Je souhaiterai pouvoir récupérer une valeur en donnant un le label.
Pourriez-vous m'aider ?
Configuration: Linux RedHat
4 réponses
-
hello
retrouver dans le shell une liste comme ça ?Label1="Valeur1"
Label2="Valeur2"
... -
Salut,
Ca serait plutôt faire un truc du genre :var1 = laFonction monFichier.json "Label3"
Et dansvar1
je récupère :Valeur3
Merci -
Je me réponds à moi même, mais ça pourra peut être aider certaines personnes.
J'ai trouvé la fonctionawk
qui est hyper puissante, mais un peu compliquée.
Après avoir lu quelques article, j'ai réussi à faire exactement ce que je voulais :awk '{ if ($1=="\"Label3\":") { gsub(/"/, "", $2); gsub(/,/, "", $2) ; print $2 }}' monFichier
Pour m'aider j'ai utilisé ces articles :
https://www.shellunix.com/awk.html
https://sites.google.com/site/diezone/awk-1/awk---exemple-pour-la-substitution-sub-gsub -
je ne comprends pas