Récupérer la valeur d'une variable

Résolu
Bonjour,

j'ai des variables définies comme ceci :

export note_mahts=9.3 # note de maths
export note_eps=12.5 # note d'eps
export note_francais=6.8 # note de francais

j'aimerais poser la question "quelle note voulez-vous récupérer ?"

si l'utilisateur tape note_eps, cela renvoie 12.5

comment faire ?

merci d'avance
Configuration: Windows XP
Internet Explorer 6.0

6 réponses

  1. merci, mais pour ma culture, à quoi sert la commande

    jp@Ubuntu-VB:~/trash$ . fich.txt

    ?
    1. ok, et si je veux juste mémoriser la valeur et ne pas afficher je dois remplacer eval echo \$${valeur} par quoi ..?
      1. ben oui évident je suis bête merci beaucoup j'arrive à faire tout ce que je veux ^^'
        1. Modérateur
          Salut,

          Un exemple parmi tant d'autres...
          jp@Ubuntu-VB:~/trash$ cat fich.txt 
          export note_mahts=9.3 # note de maths
          export note_eps=12.5 # note d'eps
          export note_francais=6.8 # note de francais
          
          jp@Ubuntu-VB:~/trash$ cat bar.sh 
          #! /bin/bash
          
          clear
          sed -n 's/[^ ]* \(.*\)=.*/\1/p' fich.txt 
          
          echo
          echo "Quelle valeur voulez-vous récupérer ?"
          echo
          read valeur
          echo
          echo "La note associée à ${valeur} est : " 
          eval echo \$${valeur}
          
          jp@Ubuntu-VB:~/trash$ . fich.txt 
          
          jp@Ubuntu-VB:~/trash$ ./bar.sh 
          
          note_mahts
          note_eps
          note_francais
          
          Quelle valeur voulez-vous récupérer ?
          
          note_eps
          
          La note associée à note_eps est : 
          12.5
          
          jp@Ubuntu-VB:~/trash$
          ;-))
          1. Modérateur
            A sourcer le fichier contenant les variables afin quelles soient bien exportées et utilisable. On aurait pu écrire aussi :
            source fich.txt