
Meu histórico do bash parou de funcionar misteriosamente e não tenho ideia de como consertar isso. Esta é a aparência do meu .bashrc:
HISTSIZE=500
HISTFILESIZE=500
HISTFILE=$HOME/.bash_history
No entanto, quando executo, echo $HISTFILE
ele é impresso /Users/myusername/.bash_sessions/EE8689E5-7DAD-4018-817E-0AF1DE36082A.historynew
.
Eu sou o proprietário do arquivo .bash_history, então não tenho certeza de como resolveria esse problema.
Obrigado!
Responder1
O Terminal atribui a cada sessão de terminal um identificador exclusivo e o comunica por meio da variável de ambiente TERM_SESSION_ID para que os programas em execução em um terminal possam salvar/restaurar o estado específico do aplicativo ao sair e reiniciar o Terminal com Resume habilitado.
Uma nova pasta (~/.bash_sessions/) é usada para armazenar arquivos HISTFILE e .session exclusivos das sessões.
Durante a inicialização do shell, o arquivo da sessão é executado. Arquivos antigos são excluídos periodicamente.
O comportamento padrão permite salvar e restaurar o histórico de comandos bash de forma independente para cada sessão de terminal restaurada. Também mescla comandos no histórico global para novas sessões.
Você pode desativar esse comportamento e compartilhar um único histórico configurando
export SHELL_SESSION_HISTORY=0
Se HISTTIMEFORMAT for definido, o histórico por sessão será desabilitado por padrão (leia mais em /private/etc/bashrc_Apple_Terminal)
O mecanismo de salvar/restaurar será desabilitado se o seguinte arquivo existir:
~/.bash_sessions_disable
A Apple já mudou algum comportamento desde o lançamento do El Capitan, então é melhor ler mais sobre isso aquiless /private/etc/bashrc_Apple_Terminal
Responder2
Notei algo semelhante após a atualização do El Capitan. Simplesmente adicionar o arquivo file .bash_sessions_disable
em seu diretório inicial desativa as novas sessões do bash e ele .bash_history
volta a ser usado.
EsseTópico Reddittem mais informações e outros links.
Responder3
Você pode resolver o problema do RVM atualizando para a versão mais recente do RVM ou executando isto:
echo 'shell_session_update' > $HOME/.bash_logout
Verhttps://github.com/rvm/rvm/issues/3540para mais informações.
Responder4
Se for um Mac, suponho que o shell de login padrão seja bash
e ele seja executado .profile
em vez de .bashrc
. Então, você estava editando o arquivo errado.