.bash_profile
se ejecuta para los shells de inicio de sesión, mientras que .bashrc
se ejecuta para los shells interactivos que no son de acceso.
Cuando te conectas (escribe el nombre de usuario y la contraseña) a través de la consola, ya sea sentado en la máquina, o de forma remota a través de ssh: .bash_profile
se ejecuta para configurar su shell antes del prompt de comandos inicial.
Pero, si ya has entrado en tu máquina y abres una nueva ventana de terminal (xterm) entonces .bashrc
se ejecuta antes de la ventana del símbolo del sistema. .bashrc
también se ejecuta cuando se inicia una nueva instancia de bash escribiendo /bin/bash
en una terminal.
En OS X, Terminal ejecuta por defecto un shell de inicio de sesión cada vez, así que esto es un poco diferente a la mayoría de los otros sistemas, pero se puede configurar en las preferencias.
8 votos
No es por desanimar el conocimiento de unix aquí, pero bash es una bestia pura de UNIX, así que podrías obtener mejor conocimiento o tener esta pregunta respondida varias veces en un sitio asociado. Hay más de 200 pares de preguntas/respuestas sobre bashrc en unix
2 votos
También hay un perfil... Ver esta pregunta en Stack Overflow.
2 votos
Si usted
brew install bash
y utilizar iTerm2, podría establecerprofile -> command
a/usr/local/bin/bash
que cargará.bashrc
por defecto después de.bash_profile
. Esto también te da Bash 4 goodies...