Set variable d'environnement

dert -  
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   -
salut
j'ai utilise dans in script la commande:

set PRJHOME=`echo $PWD | cut -d / -f 4-5`
echo $PRJHOME

mais dans le echo je n'obtient aucune valeur,ja sais pas pourquoi?
je veux aussi obtenir le resultat si je tape la commande:
echo $PRJHOME dans le prompt
Aidez moi svp

9 réponses

  1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    C'st bizarre que ça ne marche pas :
    [jp@Mandrake tmpfs]$ echo $PWD
    /home/jp/tmpfs
    
    [jp@Mandrake tmpfs]$ PRJHOME=`echo $PWD | cut -d / -f 2`
    [jp@Mandrake tmpfs]$ echo $PRJHOME
    home
    
    [jp@Mandrake tmpfs]$
    C'est quoi ton shell ?

    Sinon pour définir une variable et la rendre accessible il faut l'exporter :
    export variable=valeur
    ou
    variable=valeur
    export variable
    1
  2. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,

    Essaye tout simplement :
    PRJHOME=`echo $PWD | cut -d / -f 4-5`
    :-))
    0
  3. dert
     
    j'ai essaye mais ca n'as pas marche,

    je veux definir cette variable comment etant une variable d'environnemet qui sera accesssible d'un autre repertoire

    est ce que vous m'avez compris?
    0
  4. sarag
     
    lorseque j'essaye avec des commandes dans le prompt, ca marche mais dans un fichier que j'execute ca marche pas!!!!!!!!!!!!
    est ce que quelqu'un connait la reponse?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Bon, je repose la question : quel est ton shell ???
    Affiches-nous ton script aussi par la même occasion, on est pas devin :-))
    0
  7. dert
     
    le code est le suivant

    #! /bin/sh
    if [ -f /home/prj/itsec/.prjrc ]; then
    echo "le fichier a ete trouve"
    else
    echo "ERREUR"
    echo "le fichier n a pas ete trouve"
    exit
    fi

    PRJHOME=`echo $PWD | cut -d / -f 4-5`
    echo $PRJHOME

    ca donne rien comme resultat
    0
  8. dert
     
    meme avec set, ca donne rien

    le code est le suivant

    #! /bin/sh
    if [ -f /home/prj/itsec/.prjrc ]; then
    echo "le fichier a ete trouve"
    else
    echo "ERREUR"
    echo "le fichier n a pas ete trouve"
    exit
    fi

    set PRJHOME=`echo $PWD | cut -d / -f 4-5`
    echo $PRJHOME
    0
  9. dert
     
    toujours pas de reponse???!!!!!!!!!
    je sais pas pk cane marche pas, c bizzare non?
    0
  10. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,

    Parce que ton script doit d'abord se placer dans un répertoire (il doit définir lui même un répertoire exploitable par la variable "$PWD").
    Donc rajoute en début :
    cd /home/prj/itsec/
    if [ -f .prjrc ]; then...
    et là il te retournera le chemin ;-))
    0