O histórico de comandos ajuda a visualizar os comandos executados anteriormente no terminal. Veja como você pode gerenciar o histórico de comandos no Linux.

No Linux, todos os comandos digitados são salvos no arquivo de histórico. O comando history permite visualizar e reutilizar esses comandos sem precisar digitá-los novamente. Você pode navegar pela lista de histórico usando o Acima e Abaixo chaves. No entanto, pode haver momentos em que você deseja excluir alguns comandos do histórico ou desativar permanentemente o recurso de salvamento do histórico.

Felizmente, o Linux permite que você controle os recursos de registro de comandos, como desativá-lo temporariamente ou permanentemente, excluindo todo o histórico ou impedindo que determinados comandos sejam salvos no histórico lista. Vamos ver como.

Excluir todo o histórico de comandos no Linux

Para excluir todo histórico de comandos no Linux desde o início, use o comando history com o -c opção:

história -c

Isso apagará todo o histórico dos comandos executados anteriormente.

Excluir comandos específicos do histórico

Às vezes, em vez de excluir todo o histórico, você pode querer remover comandos específicos. Nesse caso, você precisa determinar o número associado a esse comando específico na lista de histórico. Você pode fazer isso simplesmente digitando:

história

Ou você também pode canalizar a saída do histórico para grep para encontrar as informações desejadas mais facilmente:

história | grep ifconfig

Depois de encontrar o número do comando, você pode excluí-lo usando o comando history com o -d opção seguida pelo número do comando:

história -d 

Executar um comando sem incluí-lo no histórico

Para executar um comando sem que ele fique registrado no histórico, basta adicionar um Espaço antes do comando. No entanto, para que esse recurso funcione, você precisará definir o HISTCONTROL variável de ambiente para ignorespace usando o seguinte comando:

export HISTCONTROL=ignorespace

Essa alteração não persiste após uma reinicialização. Para torná-lo permanente, adicione-o ao seu .bashrc arquivo usando o seguinte comando:

echo 'HISTCONTROL=ignorespace' >> ~/.bashrc

Ao habilitar esse recurso, o Bash não gravará comandos começando com um caractere de espaço no arquivo de histórico.

Por exemplo, o seguinte comando não será registrado pelo shell:

[espaço] echo 'olá, esta é a primeira linha'

Se você executar o mesmo comando sem espaço, o Bash o registrará no histórico:

echo 'olá, esta é a primeira linha'

Da mesma forma, você também pode permitir que o Bash remova comandos duplicados consecutivos do histórico com:

echo 'HISTCONTROL=ignoredups' >> ~/.bashrc

Este recurso armazenará as duplicatas consecutivas apenas uma vez na lista de histórico.

Como ativar/desativar o histórico de comandos no Linux

Embora o método anterior possa impedir que o shell registre comandos no histórico, pode não ser prático ao lidar com um grande número de comandos.

Inserir um espaço antes de cada comando pode se tornar monótono e pesado. Nesse cenário, você pode desativar temporariamente o histórico do shell executando o seguinte comando:

definir +o histórico

Para ativá-lo novamente, use o seguinte comando:

definir -o histórico

Para desativar permanentemente o histórico de comandos do Linux, use:

echo 'definir +o histórico' >> ~/.bashrc

Ignore que certos comandos sejam registrados no histórico

Pode haver certos comandos que você deseja excluir, pois eles podem sobrecarregar a lista de histórico e dificultar a navegação. Alguns dos exemplos comuns são pwd, ls, man, cat e o comando cd pois pode ser repetitivo e supérfluo.

Usando o HISTIGNORE variável de ambiente, você pode controlar quais comandos não devem ser adicionados à lista de histórico. Por exemplo, para excluir certos comandos como history, pwd e cat de serem salvos na lista de histórico, separe-os usando dois pontos e coloque-os entre aspas duplas como segue:

export HISTIGNORE="história: pwd: gato"

Para tornar a alteração permanente, adicione o comando ao .bashrc arquivo usando:

echo 'HISTIGNORE="história: pwd: cat"' >> .bashrc

Controle seu histórico de comandos Bash no Linux

O Linux oferece amplo controle sobre o gerenciamento do histórico da linha de comando, permitindo que os usuários especifiquem quais comandos salvar no histórico, excluir comandos específicos do histórico, habilitar ou desabilitar o histórico temporariamente ou até mesmo deletar todo o história.

Isso não apenas ajuda a proteger a privacidade do usuário, mas também evita que comandos irrelevantes ou repetitivos atrapalhem o histórico do Bash.

Uma maneira ainda melhor de acessar o histórico da linha de comando é usar o McFly, um substituto baseado em rede neural para o padrão reverse-i-search no Linux.