(3 respuestas)
Cerrado hace 6 años.
Estaba viendo mi archivo .bash_profile y vi esto escrito dentro de un bloque de instrucción if:
if [ -f ~/.bashrc ]; then
. ~/.bashrc
¿Alguien puede explicar qué está haciendo realmente la segunda línea?
Respuesta aceptada:
La segunda línea "obtiene" el .bashrc
texto; eso significa que carga y ejecuta su contenido en el mismo contexto de shell. El resultado es el mismo que poner el contenido de .bashrc
en .bash_profile
.
Esta declaración es útil porque los dos archivos se usan en diferentes contextos:.bash_profile
se ejecuta cuando bash
comienza como un shell de inicio de sesión, mientras que .bashrc
se ejecuta cuando bash
se inicia como un shell interactivo sin inicio de sesión. Incluyendo .bashrc
en .bash_profile
le permite ser el único lugar para agregar la personalización que desea tener en todos los shells interactivos.
Si .bashrc
no se obtuvo con .
, su ejecución generaría un nuevo caparazón solo por la duración, y sus efectos se perderían inmediatamente.