Le Wed, 06 Jul 2005 12:58:13 -0700, bricem13 a écrit :
Bonsoir Bonsoir
j'ai eu besoin de redéfinir des variables d'environnement pour mon bash suite à une config de procmail qui delivre dans mon home désormais.
Je me suis aperçu qu'en console cette redéfinition n'est pas prise en compte tout comme mon prompt coloré.
il faut que je fasse quoi pour que cela soit aussi actif en console?
Faire un "source $HOME/.bashrc" dans le .bash_profile.
bricem13
ok merci ça marche!!
sinon question subsidiaire, est-ce que je dois sourcer les fichiers de configs "system-wide" /etc/bash.bashrc et /etc/profile dans mon .bashrc ou mon .bash_profile ou ils sont pris en compte quoi qu'il arrive??
Merci, Brice
ok merci ça marche!!
sinon question subsidiaire, est-ce que je dois sourcer les fichiers de
configs "system-wide" /etc/bash.bashrc et /etc/profile dans mon .bashrc
ou mon .bash_profile ou ils sont pris en compte quoi qu'il arrive??
sinon question subsidiaire, est-ce que je dois sourcer les fichiers de configs "system-wide" /etc/bash.bashrc et /etc/profile dans mon .bashrc ou mon .bash_profile ou ils sont pris en compte quoi qu'il arrive??
Merci, Brice
Cem
Le Wed, 06 Jul 2005 13:10:26 -0700, bricem13 a écrit :
sinon question subsidiaire, est-ce que je dois sourcer les fichiers de configs "system-wide" /etc/bash.bashrc et /etc/profile dans mon .bashrc ou mon .bash_profile ou ils sont pris en compte quoi qu'il arrive??
/etc/profile est exécuté ainsi que ~/.bash_profile lorsqu'on exécute un
bash de login (au login donc, ou en faisant su - ou bash --login).
~/.bashrc est lu s'il existe lorsque on lance un shell qui n'est pas de login (par exemple quand on lance un xterm sous X).
Vu que le login a forcément déjà été fait, il est inutile normalement de réexécuter /etc/profile et ~/.bash_profile lorsqu'on lance un nouveau shell. C'est pour ça que je crois qu'il vaut mieux mettre les variables d'environnement (comme MAIL) dans le ~/.bash_profile que dans le ~/.bashrc.
Tu parles de /etc/bash.bashrc, Ce n'est pas /etc/bashrc tout simplement?
Supposons que ce soit /etc/bashrc... A moins que le bash n'ait été patché pour ça, ce n'est pas un comportement standard, je crois, que bash lise /etc/bashrc. Il vaut mieux le tester (mettre un echo 'lit /etc/bashrc' dans le /etc/bashrc et lancer une commande bash.
Si /etc/bashrc n'est effectivement pas lu, il faut le "sourcer" dans ~/.bashrc. Le mieux étant de faire if [ -f /etc/bash.bashrc ]; then source /etc/bash.bashrc fi
Le Wed, 06 Jul 2005 13:10:26 -0700, bricem13 a écrit :
sinon question subsidiaire, est-ce que je dois sourcer les fichiers de
configs "system-wide" /etc/bash.bashrc et /etc/profile dans mon .bashrc
ou mon .bash_profile ou ils sont pris en compte quoi qu'il arrive??
/etc/profile est exécuté ainsi que ~/.bash_profile lorsqu'on exécute un
bash de login (au login donc, ou en faisant su - ou bash --login).
~/.bashrc est lu s'il existe lorsque on lance un shell qui n'est pas de
login (par exemple quand on lance un xterm sous X).
Vu que le login a forcément déjà été fait, il est inutile normalement
de réexécuter /etc/profile et ~/.bash_profile lorsqu'on lance un nouveau
shell.
C'est pour ça que je crois qu'il vaut mieux mettre les variables
d'environnement (comme MAIL) dans le ~/.bash_profile que dans le
~/.bashrc.
Tu parles de /etc/bash.bashrc, Ce n'est pas /etc/bashrc tout simplement?
Supposons que ce soit /etc/bashrc...
A moins que le bash n'ait été patché pour ça, ce n'est pas un
comportement standard, je crois, que bash lise /etc/bashrc. Il vaut mieux
le tester (mettre un echo 'lit /etc/bashrc' dans le /etc/bashrc et lancer
une commande bash.
Si /etc/bashrc n'est effectivement pas lu, il faut le "sourcer" dans
~/.bashrc.
Le mieux étant de faire
if [ -f /etc/bash.bashrc ]; then
source /etc/bash.bashrc
fi
Le Wed, 06 Jul 2005 13:10:26 -0700, bricem13 a écrit :
sinon question subsidiaire, est-ce que je dois sourcer les fichiers de configs "system-wide" /etc/bash.bashrc et /etc/profile dans mon .bashrc ou mon .bash_profile ou ils sont pris en compte quoi qu'il arrive??
/etc/profile est exécuté ainsi que ~/.bash_profile lorsqu'on exécute un
bash de login (au login donc, ou en faisant su - ou bash --login).
~/.bashrc est lu s'il existe lorsque on lance un shell qui n'est pas de login (par exemple quand on lance un xterm sous X).
Vu que le login a forcément déjà été fait, il est inutile normalement de réexécuter /etc/profile et ~/.bash_profile lorsqu'on lance un nouveau shell. C'est pour ça que je crois qu'il vaut mieux mettre les variables d'environnement (comme MAIL) dans le ~/.bash_profile que dans le ~/.bashrc.
Tu parles de /etc/bash.bashrc, Ce n'est pas /etc/bashrc tout simplement?
Supposons que ce soit /etc/bashrc... A moins que le bash n'ait été patché pour ça, ce n'est pas un comportement standard, je crois, que bash lise /etc/bashrc. Il vaut mieux le tester (mettre un echo 'lit /etc/bashrc' dans le /etc/bashrc et lancer une commande bash.
Si /etc/bashrc n'est effectivement pas lu, il faut le "sourcer" dans ~/.bashrc. Le mieux étant de faire if [ -f /etc/bash.bashrc ]; then source /etc/bash.bashrc fi
bricem13
merci pour les explications
Par contre mettre les variables d'environnement dans bash_profile ne marche pas! j'ai fait le test. D'autre part, si tu sources ton bashrc dans ton bash_profile pas de pbm que ce soit en cole ou sous X.
Brice
merci pour les explications
Par contre mettre les variables d'environnement dans bash_profile ne
marche pas! j'ai fait le test. D'autre part, si tu sources ton bashrc
dans ton bash_profile pas de pbm que ce soit en cole ou sous X.
Par contre mettre les variables d'environnement dans bash_profile ne marche pas! j'ai fait le test. D'autre part, si tu sources ton bashrc dans ton bash_profile pas de pbm que ce soit en cole ou sous X.
Brice
Cem
Le Wed, 06 Jul 2005 14:56:49 -0700, bricem13 a écrit :
Par contre mettre les variables d'environnement dans bash_profile ne marche pas! j'ai fait le test. D'autre part, si tu sources ton bashrc dans ton bash_profile pas de pbm que ce soit en cole ou sous X.
Ne marche pas? J'ai pourtant lu qq part que le .bash_profile est la place naturelle des variables d'environnement et le .bashrc celle des alias et des fonctions. "Sourcer" le .bashrc dans le .bash_profile est par ailleurs une chose qui est effectivement à faire puisque le .bashrc n'est pas lu quand on exécute un shell de login. Mais c'est vrai à la réflexion que si on se connecte à X via un "display manager", il n'y a pas de raison que le .bash_profile soit lu. Je ne m'en rends pas bien compte parce que je n'en utilise plus. On peut néanmoins contourner cette difficulté. Si on utilise xterm, on peut mettre XTerm*loginShell: true dans le fichier ~/.Xdefault Et tous les xterm seront lancés avec un shell de login. Pour konsole, il suffit e faire exécuter bash --login au lieu de bash. gnome-terminal peut être lancé en tant que shell de connexion. Etc...
Le Wed, 06 Jul 2005 14:56:49 -0700, bricem13 a écrit :
Par contre mettre les variables d'environnement dans bash_profile ne
marche pas! j'ai fait le test. D'autre part, si tu sources ton bashrc
dans ton bash_profile pas de pbm que ce soit en cole ou sous X.
Ne marche pas?
J'ai pourtant lu qq part que le .bash_profile est la place naturelle des
variables d'environnement et le .bashrc celle des alias et des fonctions.
"Sourcer" le .bashrc dans le .bash_profile est par ailleurs une chose qui
est effectivement à faire puisque le .bashrc n'est pas lu quand on
exécute un shell de login.
Mais c'est vrai à la réflexion que si on se connecte à X via un "display
manager", il n'y a pas de raison que le .bash_profile soit lu.
Je ne m'en rends pas bien compte parce que je n'en utilise plus.
On peut néanmoins contourner cette difficulté.
Si on utilise xterm, on peut mettre
XTerm*loginShell: true
dans le fichier ~/.Xdefault
Et tous les xterm seront lancés avec un shell de login.
Pour konsole, il suffit e faire exécuter bash --login au lieu de bash.
gnome-terminal peut être lancé en tant que shell de connexion.
Etc...
Le Wed, 06 Jul 2005 14:56:49 -0700, bricem13 a écrit :
Par contre mettre les variables d'environnement dans bash_profile ne marche pas! j'ai fait le test. D'autre part, si tu sources ton bashrc dans ton bash_profile pas de pbm que ce soit en cole ou sous X.
Ne marche pas? J'ai pourtant lu qq part que le .bash_profile est la place naturelle des variables d'environnement et le .bashrc celle des alias et des fonctions. "Sourcer" le .bashrc dans le .bash_profile est par ailleurs une chose qui est effectivement à faire puisque le .bashrc n'est pas lu quand on exécute un shell de login. Mais c'est vrai à la réflexion que si on se connecte à X via un "display manager", il n'y a pas de raison que le .bash_profile soit lu. Je ne m'en rends pas bien compte parce que je n'en utilise plus. On peut néanmoins contourner cette difficulté. Si on utilise xterm, on peut mettre XTerm*loginShell: true dans le fichier ~/.Xdefault Et tous les xterm seront lancés avec un shell de login. Pour konsole, il suffit e faire exécuter bash --login au lieu de bash. gnome-terminal peut être lancé en tant que shell de connexion. Etc...