Escribí un alias para un comando enorme y lo almacené, .bash_profile
y para mi sorpresa, emacs no tomó el alias que escribí .bash_profile
. Después de buscar en Internet, creé un .bashrc
archivo en mi $ HOME con el comando alias y solo después de que emacs recogió el alias. Estoy confundido porque terminal.app toma el alias .bash_profile
pero emacs solo toma el alias en .bashrc
.
Estaba corriendo M-x shelly estoy en macOS. ¿Alguien puede explicarme cuál es la relación con emacs y .bashrc
& .bash_profile
.
Además , ¿cómo puedo hacer que Emacs lea mi .bash_profile
además .bashrc
?
.bashrc
alias? Estoy preguntando esto porque mi Emacs (y aparentemente otros) no lo hace por defecto.zsh
lugar de bash :)Respuestas:
Este es el comportamiento correcto.
.bash_profile
es para los llamados shells de inicio de sesión. Al igual que cuando se conecte a su ordenador en modo de texto, o en un emulador de terminal a otro ordenador a través dessh
otelnet
, o ....bashrc
está destinado a shells sin inicio de sesión, como cuando ya ha iniciado sesión y comienza un nuevo xterm, o en este caso elshell
modo emacs .Por lo general, también
.bash_profile
contiene los comandos para leer en.bashrc
:así que
.bashrc
se lee en cada inicio.Entonces, los alias pertenecen
.bashrc
; También es habitual crear un separado.bash_aliases
e incluirlo a.bashrc
través de la misma construcción:fuente
Además de los puntos hechos por @pingi, también puede usar un archivo de configuración separado que se cargará solo para el shell de emacs (
M-x shell
):Desde la página del manual (emacs) Interactive Shell :
Esto es útil si desea utilizar un formato de solicitud de shell diferente dentro de Emacs, o para definir funciones para pasar archivos a emacsclient.
fuente