[Shell] Recherché valeur dans fichier => variable

Résolu
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 :
{
"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

  1. hello
    retrouver dans le shell une liste comme ça ?
    Label1="Valeur1"
    Label2="Valeur2"
    ...
    0
    1. Salut,

      Ca serait plutôt faire un truc du genre :
      var1 = laFonction monFichier.json "Label3"


      Et dans
      var1
      je récupère :
      Valeur3


      Merci
      0
      1. Je me réponds à moi même, mais ça pourra peut être aider certaines personnes.
        J'ai trouvé la fonction
        awk
        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
        0