mac - ¿Cómo recargar.bash_profile desde la línea de comandos?
modificar bash (14)
¿Cómo puedo volver a cargar .bash_profile
desde la línea de comandos? Puedo hacer que el shell reconozca los cambios en .bash_profile
al salir y volver a iniciar sesión, pero me gustaría poder hacerlo a pedido.
- Guardar el archivo .bash_profile
- Ir al directorio de inicio del usuario escribiendo
cd
- Vuelve a cargar el perfil con
. .bash_profile
. .bash_profile
Agregue alias bashs="source ~/.bash_profile"
en su archivo bash. Así que puedes llamar a bashs
próxima vez.
Estoy ejecutando Sierra, y estuve trabajando en esto por un tiempo (probando todas las soluciones recomendadas). Me confundí, ¡así que al final intenté reiniciar mi computadora! Funcionó
Mi conclusión es que a veces es necesario un reinicio duro
Me gusta el hecho de que después de que acaba de editar el archivo, todo lo que necesita hacer es escribir:
. !$
Esto genera el archivo que acabas de editar en la historia. Ver lo que es dólar bang en bash .
Quería publicar una respuesta rápida que, al usar source ~/.bash_profile
o las respuestas mencionadas anteriormente, una cosa que mencionar es que esto solo vuelve a cargar su perfil de bash en la pestaña o sesión actual que está viendo. Si desea volver a cargar su perfil de bash en cada pestaña / shell, debe ingresar este comando manualmente en cada una de ellas.
Si usa iTerm, puede usar CMD⌘ + Shift + I para ingresar un comando en todas las pestañas actuales . Para el terminal puede ser útil hacer referencia a este issue ;
Si el archivo .bash_profile no existe, puede intentar ejecutar el siguiente comando:
. ~/.bashrc
o
source ~/.bashrc
en lugar de .bash_profile. Puede encontrar más información sobre bashrc
Si no le importa perder el historial de su terminal shell actual, también podría hacerlo.
bash -l
Eso podría bifurcar tu shell y abrir otro proceso hijo de bash. El parámetro -l
le dice a bash que se ejecute como shell de inicio de sesión, esto es necesario porque .bash_profile no se ejecutará como un shell sin inicio de sesión, para más información sobre esto, lea aquí
Si desea reemplazar completamente el shell actual, también puede hacer:
exec bash -l
Lo anterior no bifurcará su shell actual sino que lo reemplazará por completo, de modo que cuando escriba exit
terminará por completo, en lugar de dejarlo caer en el shell anterior.
Simplemente escriba source ~/.bash_profile
Alternativamente, si te gusta guardar las pulsaciones de teclado puedes escribir . ~/.bash_profile
. ~/.bash_profile
Simplemente escriba:
. ~/.bash_profile
Sin embargo, si desea que la fuente se ejecute automáticamente cuando el terminal se inicie en lugar de ejecutarlo cada vez que abra la terminal, puede agregar . ~/.bash_profile
. ~/.bash_profile
a ~/.bashrc
archivo.
Nota:
Cuando abres un terminal, el terminal inicia el modo interactivo bash (sin inicio de sesión), lo que significa que generará ~/.bashrc
.
~/.bash_profile
solo proviene de bash cuando se inicia en el modo de inicio de sesión interactivo . Esto suele ser solo cuando inicia sesión en la consola ( Ctrl + Alt + F1 .. F6 ), o se conecta a través de ssh
.
También puede usar este comando para volver a cargar ~ / .bash_profile para ese usuario. Asegúrate de usar el tablero.
su - username
Utilizo Debian y simplemente puedo escribir exec bash
para lograr esto. No puedo decir si funcionará en todas las otras distribuciones.
solo necesitas escribir . ~/.bash_profile
. ~/.bash_profile
Consulte: https://superuser.com/questions/46139/what-does-source-do
. ~/.bash_profile
Solo asegúrate de no tener dependencias en el estado actual allí.
alias reload!=". ~/.bash_profile"
o si quieres agregar registros a través de funciones
function reload! () {
echo "Reloading bash profile...!"
source ~/.bash_profile
echo "Reloaded!!!"
}