PATH qui disparait

SPC Messages postés 4 Statut Membre -  
crabs Messages postés 909 Statut Membre -
Bonjour à tous !
J'in un petit pb avec mon PATH (et oui , il est capricieux!).J'ai créé un petit script pour eviter d'avoir a taper ./ devant chaque executable .Je l'ai changé de mode (777) et je l'inclu dans le PATH par PATH=$PATH:adresse-absolu-du-script enn tant que su mais dés que je ferme la konsole sur llaquel je l'ai inclue le PATH se remodifie en suprimant l'adresse ajoutée precedement, du coup : "command not found" !! !
Je ne sais pas quoi fire de plus !!
Quelqun aurait-il une solution ?

3 réponses

crabs Messages postés 909 Statut Membre 507
 
Salut,
Au vue des quelques infos que tu donnes, tu sembles être sous Linux.
Peux-tu être plus précis : système d'exploitation, shell que tu utilises.
A+, crabs
0
SPC Messages postés 4 Statut Membre
 
Merci crabs de repondre encore a mes question et désolé qu'elles soit laconiques .Alors, je suis sous FC4 avec un shell en bash et j'ecrit en C, si besoin est je compile avec gcc , et ... je sais pas quoi dire d'autre !.
0
crabs Messages postés 909 Statut Membre 507
 
Salut,
Pour le PATH, chaque utilisateur à le sien. Donc quand tu modifies le PATH de
root, tu ne modifies pas le PATH pour les autres utilisateurs. [t'es pas sous
DOS ou autre OS du même type]
Pour jouer avec les binaires du dossier courant le plus simple c'est de
rajouter '.' à la fin de la variable d'environnement PATH de l'utilisateur.

Le mieux pour t'en sortir, tu crées ou tu modifies le fichier qui se situe dans
ton HOME et qui se nomme .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

BASH_ENV=$HOME/.bashrc

export BASH_ENV PATH

Puis tu crées le fichier .bashrc toujours dans ton dossier HOME :
# On supprime le '.' si il existe dans le PATH
PATH=`echo $PATH |\
 awk -F: 'BEGIN{sep="";p=""}\
  {for(i=1;i<=NF;i++) if ($i!="."){p=p sep $i;sep=":"}}\
  END{print p}'`
# Puis on le rajoute
PATH=${PATH}:.
export PATH

L'avantage de la technique c'est qu'au fur et à mesure des changements
d'environnement et des lancements de scripts il n'y aura qu'un '.' dans le
PATH. Second avantage on est sur que le . est à la fin du PATH
Fait cette modification pour tes comptes utilisateurs, mais c'est à éviter pour
le compte root.

Tu vérifie que ça fonctionne en relançant une console pour ton utilisateur
(dont tu as modifié ces fichiers d'environnements).
Dès que tu n'as plus d'erreur (moi j'en ai pas sous Slackware), tu quittes ton
environnement graphique et tu te reconnectes.

Merci crabs de repondre encore a mes question et ...
Même si il y a un certain temps, je me suis aussi posé ces questions, et
quelques 'gourou' y ont répondu soit au travers de leur publication soit par
le biais des forums.

A+, bon courage, crabs
0