Excluindo alguns comandos de serem armazenados no histórico bash somente após o terminal ser fechado

0

Atualmente, estou usando $HISTIGNORE para ignorar alguns comandos e não salvá-los no histórico bash. Mas o comportamento atual é se eu estou executando um terminal eu executei um comando que está em $HISTIGNORE , em seguida, na seta para cima me leva ao último comando salvo, mas eu quero ter esses comandos ignorados disponíveis na sessão atual e excluí-los somente após o sessão está fechada.

    
por ksmukta 16.09.2017 / 04:29

1 resposta

0

Você pode usar sed para excluir linhas do seu arquivo ~/.bash_history , por exemplo,

sed -i -e '/ apt /d' -e '/^xterm/d' ~/.bash_history

para excluir todas as linhas que contenham “apt” e todas as linhas que começam com “xterm”.

Se você quiser realizar a exclusão toda vez que abrir um novo terminal, adicione a linha sed ao seu arquivo ~/.bashrc . Você também pode usar o cron ( crontab -e ) para automatizar a limpeza, por exemplo, com a linha

@hourly sed -i -e '/ apt /d' -e '/^xterm/d' ~/.bash_history

para realizar a limpeza por hora.

    
por dessert 16.09.2017 / 08:26