Existe uma maneira de influenciar o comportamento do histórico do bash?

Existe uma maneira de influenciar o comportamento do histórico do bash?

No terminal, o histórico do bash geralmente é útil quando você procura uma linha de comando que já usou. Mas existe uma maneira de influenciar o comportamento do histórico do bash (ou seja, quais comandos são salvos, por quanto tempo são salvos, quantos são salvos e assim por diante)?

Responder1

Diversas variáveis ​​controlam o comportamento do seu histórico:

  • HISTCONTROL: controla como os valores são salvos em seu histórico. Os valores ignorespace, ignoredupse erasedupspodem ser inseridos aqui (separe-os por dois pontos).
  • HISTFILE: define a localização do arquivo de histórico.
  • HISTFILESIZE: define o número máximo de linhas em seu arquivo de histórico.
  • HISTIGNORE: tem uma lista de padrões que o bash ignora (vejaa outra respostapara sintaxe).
  • HISTSIZE: contém várias linhas que são lembradas no shell real.
  • HISTTIMEFORMAT: contém uma expressão sobre como uma entrada é formatada (vejaoutra resposta)

Responder2

Configurando carimbo de data/hora para histórico:

  • Por padrão, o histórico não é anexado ao carimbo de data/hora, mas é fácil configurá-lo para exibir o carimbo de data/hora, você só precisa definir uma variável de ambienteHISTTIMEFORMAT.

    export HISTTIMEFORMAT="%h/%d - %H:%M:%S "

  • Execute o histórico novamente para ver o resultado. texto alternativo
  • Se você não quiser salvar os comandos no histórico, então

    export HISTSIZE=0

VARIÁVEIS:

  • HISTFILE - Controla onde o arquivo de histórico é salvo.
  • HISTFILESIZE - Controla quantos comandos de histórico devem ser mantidos em HISTFILE.
  • HISTSIZE - Controla quantos comandos de histórico devem ser mantidos na lista de histórico da sessão atual.
  • HISTIGNORE - Controla quais comandos ignorar e não salvar na lista de histórico.

Observação:

  • Você perderá suas configurações ao fechar o terminal. Portanto, se quiser que ele tenha permanentemente, você deve adicionar o comando acima a ~/.bashrcou ~/.bash_aliases.

Responder3

Você poderia adicionar uma linha como

export HISTFILESIZE=5000

para ~/.bashrcaumentar o tamanho do histórico. Por padrão, os comandos iniciados com um espaço não são salvos. Isso se deve ao export HISTCONTROL=ignorebothfato de estar habilitado globalmente no Ubuntu por padrão.

Você também pode ignorar comandos começando com lou whichusando

export HISTIGNORE="l*:which*"

Responder4

Existe uma maneira de contar a história e NÃO lembrar de um comando: basta começar com um espaço. Também existe uma maneira muito fácil de recuperar um comando específico: digite CTRL+R e uma palavra do comando que você está procurando.

Certamente existe uma maneira de aumentar o histórico padrão que é de 500 linhas por padrão... mas não sei como, desculpe!

informação relacionada