Cada vez que abro una nueva pestaña en Terminal usando Cmd + T, abre bash en el mismo directorio, como la pestaña anterior. Esto funciona bien cuando estoy en el directorio ~
, pero si estoy en otro lugar, aparece un error al cargar .bashrc
Last login: Sat Oct 15 21:10:00 on ttys002
-bash: .bashrc: No such file or directory
Jakub-Arnolds-MacBook-Pro:projects darth$
Parece que .bashrc
se carga a través de una ruta relativa y no absoluta, porque si lo hago source ~/.bashrc
, todo funciona sin problemas.
Creo que este es un problema relacionado con OS X Lion, porque antes de la actualización de Snow Leopard, no tenía el mismo problema. Pero eso podría deberse a que Terminal siempre se abre en ~
, no recuerdo si intentó abrir el mismo directorio.
Sin embargo, la pregunta sigue siendo la misma, ¿cómo puedo hacer que el Terminal cargue ~/.bashrc
a través de la ruta absoluta y no sea relativo?
Terminal abre un shell de inicio de sesión. Esto significa que ~/.bash_profile
se ejecutará, ~/.bashrc
no.
La solución en la mayoría de los sistemas es "requerir" el ~/.bashrc
en el ~/.bash_profile
: simplemente coloque este fragmento en su ~/.bash_profile
:
[[ -s ~/.bashrc ]] && source ~/.bashrc
Cambiar el nombre de .bashrc
a .profile
(o hacer un enlace suave de este último al anterior) también debería hacer el truco. Ver aquí .
Tengo lo siguiente en mi ~/.bash_profile
:
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
Si tuviera .bashrc
en lugar de ~/.bashrc
, estaría viendo el mismo síntoma que está viendo.