Chaque fois que j'ouvre un nouvel onglet dans Terminal en utilisant Cmd + T, il ouvre bash dans le même répertoire que l’onglet précédent. Cela fonctionne bien lorsque je suis dans le répertoire ~
, mais si je suis ailleurs, le message d'erreur ".bashrc
" s'affiche.
Last login: Sat Oct 15 21:10:00 on ttys002
-bash: .bashrc: No such file or directory
Jakub-Arnolds-MacBook-Pro:projects darth$
Il semble que .bashrc
soit chargé via un chemin relatif et non absolu, car si je fais source ~/.bashrc
, tout se passe bien.
Je pense qu'il s'agit d'un problème lié à OS X Lion, car avant la mise à niveau de Snow Leopard, je n'avais pas le même problème. Mais cela pourrait être dû au fait que le terminal s'ouvre toujours à ~
, je ne me souviens pas s'il a essayé d'ouvrir le même répertoire.
Cependant, la question reste la même, comment puis-je charger le terminal ~/.bashrc
via un chemin absolu et non relatif?
Terminal ouvre un shell de connexion. Cela signifie que ~/.bash_profile
sera exécuté, ~/.bashrc
pas.
La solution sur la plupart des systèmes consiste à "exiger" le ~/.bashrc
dans le ~/.bash_profile
: il suffit de placer cet extrait dans votre ~/.bash_profile
:
[[ -s ~/.bashrc ]] && source ~/.bashrc
Renommer .bashrc
en .profile
(ou lier doucement ce dernier à l'ancien) devrait également faire l'affaire. Voir ici .
J'ai le texte suivant dans mon ~/.bash_profile
:
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
Si j'avais .bashrc
au lieu de ~/.bashrc
, je verrais le même symptôme que vous voyez.