Como saber o histórico de meus comandos

-4

I don't know Why I've downvoted in such manner but still I need an answer

Eu sei que posso facilmente saber o histórico de meus comandos apenas executando o comando history .

Mas duas grandes conseqüências são levantadas aqui:

  1. O comando history -c apenas liberará o histórico
  2. Um comando com espaço antes não será armazenado no histórico

Portanto, se eu executar o comando history -c ou um comando com espaço antes ou outros comandos, como ^bad^good como @AvinashRaj, não posso fazer uma nova geração deles usando o comando history .

Existe outra maneira de saber que todos os comandos foram executados antes? !!

Além disso, o que está marcado como duplicado certamente não responderá à minha pergunta. É apenas um monitoramento para o terminal e não um histórico de comandos.

    
por Maythux 07.03.2014 / 10:12

1 resposta

4

O histórico de comandos do terminal bash para um usuário é armazenado em $HOME/.bash_history file. Os comandos usados na sessão tty serão gravados no arquivo .bash_history quando a sessão tty for finalizada; mas executar o comando history -c impedirá que eles sejam anexados ao arquivo de histórico. O que o comando history faz é exibir o conteúdo do $HOME/.bash_history . (Você também pode verificar e / ou editar o arquivo com editores de texto, digamos com nano $HOME/.bash_history .)

"A command with a space before it won't be stored.., !! or duplicate commands won't be stored, etc."

Você pode alterar as configurações de acordo com suas necessidades fazendo alterações no arquivo $HOME/.bashrc . Este post explica como: Get bash history para lembrar apenas os comandos executados com espaço prefixado! .

E neste arquivo você pode encontrar linhas como:

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000

HISTSIZE é o número de comandos para lembrar no histórico de comandos . O valor padrão é 500 .

HISTFILESIZE é número máximo de linhas contidas no arquivo de histórico. Quando essa variável recebe um valor, o arquivo de histórico é truncado, se necessário, removendo-se as entradas mais antigas, para não conter mais do que esse número de linhas. O valor padrão é 500 . O arquivo de histórico também é truncado para esse tamanho depois de ser gravado quando um shell interativo é encerrado.

Portanto, para resumir history -c , apenas limpa o histórico da sessão tty e os comandos anteriores ainda devem estar acessíveis com o comando history , desde que os comandos mais antigos não sejam truncados de acordo com o HISTFILESIZE < = max_lines restrição .

    
por precise 07.03.2014 / 19:05