
Mi historial de bash dejó de funcionar misteriosamente y no tengo idea de cómo solucionarlo. Así es como se ve mi .bashrc:
HISTSIZE=500
HISTFILESIZE=500
HISTFILE=$HOME/.bash_history
Sin embargo, cuando lo ejecuto, echo $HISTFILE
se imprime /Users/myusername/.bash_sessions/EE8689E5-7DAD-4018-817E-0AF1DE36082A.historynew
.
Soy el propietario del archivo .bash_history, por lo que no estoy muy seguro de cómo solucionar este problema.
¡Gracias!
Respuesta1
Terminal asigna a cada sesión de terminal un identificador único y lo comunica a través de la variable de entorno TERM_SESSION_ID para que los programas que se ejecutan en un terminal puedan guardar/restaurar el estado específico de la aplicación al salir y reiniciar Terminal con Reanudar habilitado.
Se utiliza una nueva carpeta (~/.bash_sessions/) para almacenar los archivos HISTFILE y .session que son exclusivos de las sesiones.
Durante el inicio del shell, se ejecuta el archivo de sesión. Los archivos antiguos se eliminan periódicamente.
El comportamiento predeterminado organiza guardar y restaurar el historial de comandos bash de forma independiente para cada sesión de terminal restaurada. También fusiona comandos en el historial global para nuevas sesiones.
Puede desactivar este comportamiento y compartir un único historial configurando
export SHELL_SESSION_HISTORY=0
Si se define HISTTIMEFORMAT, el historial por sesión está deshabilitado de forma predeterminada (lea más en /private/etc/bashrc_Apple_Terminal)
El mecanismo de guardar/restaurar está deshabilitado si existe el siguiente archivo:
~/.bash_sessions_disable
Apple ya cambió algunos comportamientos desde el lanzamiento de El Capitán, por lo que es mejor leer más sobre esto aquí.less /private/etc/bashrc_Apple_Terminal
Respuesta2
Noté algo similar después de la actualización de El Capitán. Simplemente agregar el archivo .bash_sessions_disable
en su directorio de inicio deshabilita las nuevas sesiones de bash y .bash_history
vuelve a estar en uso.
EsteHilo de Reddittiene más información y más enlaces.
Respuesta3
Puede resolver el problema de RVM actualizando a la última versión de RVM o ejecutando esto:
echo 'shell_session_update' > $HOME/.bash_logout
Verhttps://github.com/rvm/rvm/issues/3540para más información.
Respuesta4
Si es una Mac, supongo que su shell de inicio de sesión predeterminado es bash
y se ejecuta .profile
en lugar de .bashrc
. Entonces, estabas editando el archivo equivocado.