Suporte ao histórico da shell que não é uma merda?

4

Quando eu uso várias sessões de terminal de uma só vez, o bash só persiste os comandos de um deles. Então, mais tarde, quando tento fazer uma pesquisa de comando inversa, o comando que quero não aparece, porque não entrou na história.

Eu acho isso terrível. Como posso obter um recurso de histórico de shell que pode pesquisar todos os meus comandos, não importa em qual sessão de shell eles estavam? Eu vou com prazer mudar para um shell diferente do que se for necessário.

Estou usando o Mac OS X e o Ubuntu.

    
por Nick Retallack 12.12.2013 / 03:08

1 resposta

1

O truque mais simples seria adicionar essas linhas em seu arquivo .bashrc:

shopt -s histappend
export PROMPT_COMMAND="history -a; history -c; history -r; $PROMPT_COMMAND"

As variações em torno dessa técnica são mostradas aqui .

Pode não ser confiável, caso em que você pode querer mudar para ksh (melhor o último, ksh93 ) com o qual esta é a configuração padrão.

    
por 12.12.2013 / 09:18