Set variable d'environnement

Fermé
dert - 11 août 2005 à 18:24
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 11 août 2005 à 20:08
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

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
11 août 2005 à 19:09
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
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
11 août 2005 à 18:45
Salut,

Essaye tout simplement :
PRJHOME=`echo $PWD | cut -d / -f 4-5`
:-))
0
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
Utilisateur anonyme
11 août 2005 à 19:15
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
11 août 2005 à 19:21
Bon, je repose la question : quel est ton shell ???
Affiches-nous ton script aussi par la même occasion, on est pas devin :-))
0
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
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
toujours pas de reponse???!!!!!!!!!
je sais pas pk cane marche pas, c bizzare non?
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
11 août 2005 à 20:08
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