Apagar Todo o Histórico do Terminal
Dica publicada em Shell Script / Miscelânea
Apagar Todo o Histórico do Terminal
Segue abaixo um script simples que apaga todo o histórico do terminal Bash do Gnome e KDE em algumas distribuições Linux.
1 - Instale o pacote
Debian/Ubuntu/Mint:
Slackware:
Fedora:
Arch:
CentOS 8+:
CentOS 7:
Gentoo:
2 - Crie um arquivo chamado, por exemplo,
Foi usado
Coloque dentro:
Salve e saia.
3 - Dê permissão de execução:
4 - Crie um atalho na área de trabalho, caso quiser, para depois somente clicar no ícone ou execute pelo terminal:
Caso queira que o histórico seja completamente limpo acrescente essa parte no final do arquivo
Tenha cuidado, pois acrescentando esse bloco no
No Debian, por exemplo, crie um Lançador (atalho) na área de trabalho e coloque dentro:
1 - Instale o pacote
notify-send (opcional caso queira que exiba uma mensagem pela interface gráfica):
Debian/Ubuntu/Mint:
$ sudo apt install libnotify-bin
Slackware:
# slackpkg install libnotify
Fedora:
$ sudo dnf install libnotify
Arch:
# pacman -S libnotify
CentOS 8+:
# dnf install libnotify
CentOS 7:
# yum install libnotify
Gentoo:
# emerge x11-libs/libnotify
2 - Crie um arquivo chamado, por exemplo,
Terminar.sh:
$ sudo vim Terminar.sh
Foi usado
vim, mas use teu editor de texto preferido.
Coloque dentro:
#!/bin/bash ## === Limpa o histórico toda vez que um novo terminal bash é aberto === # Acrescentar no final do arquivo ~/.bashrc caso queira que o histórico volte limpo ao fechar o terminal clicando no "x" da janela ou digitando "exit": # export HISTFILE=~/.bash_history # history -c # Limpa o histórico em memória # > "$HISTFILE" # Apaga o arquivo de histórico # history -w # Salva arquivo vazio # history -r # Recarrega (vazio) # Escreve o histórico atual para o arquivo de histórico # history -w # Limpa a lista de histórico ao excluir todas as entradas history -c # Limpa o histórico do bash (em todos os shells) > ~/.bash_history # (Opcional) garante que permissões estejam corretas chmod 600 ~/.bash_history # Mostra notificação gráfica Gnome e KDE notify-send -i utilities-terminal "Terminal" "Histórico limpo e terminais encerrados." # Se o notify-send não funcionar, instale o pacote (talvez tenha de habilitar o sudo): # Debian/Ubuntu/Mint: # sudo apt install libnotify-bin # Fedora: # sudo dnf install libnotify # Arch: # sudo pacman -S libnotify # CentOS 8+: # sudo dnf install libnotify # CentOS 7: # sudo yum install libnotify # Gentoo: # sudo emerge x11-libs/libnotify # Mensagem opcional (só aparece se rodar via terminal) # echo "Terminal fechado e histórico limpo." # sleep 3 # Fecha os terminais GNOME pkill -9 gnome-terminal # Fecha os terminais KDE # pkill -9 konsole # Lista de terminais mais utilizados: # pkill -9 gnome-terminal # pkill -9 konsole # pkill -9 xfce4-terminal # pkill -9 mate-terminal # pkill -9 alacritty # pkill -9 kitty
Salve e saia.
3 - Dê permissão de execução:
$ sudo chmod +x Terminar.sh
4 - Crie um atalho na área de trabalho, caso quiser, para depois somente clicar no ícone ou execute pelo terminal:
$ ./Terminar.sh
Caso queira que o histórico seja completamente limpo acrescente essa parte no final do arquivo
~/.bashrc (no script tem todas as informações):
# Acrescentar no final do arquivo ~/.bashrc caso queira que o histórico seja limpo ao fechar o terminal clicando no x da janela: export HISTFILE=~/.bash_history history -c # Limpa o histórico em memória > "$HISTFILE" # Apaga o arquivo de histórico history -w # Salva arquivo vazio history -r # Recarrega (vazio)
Tenha cuidado, pois acrescentando esse bloco no
~/.bashrc, TODO o histórico será limpo e o terminal sempre abrirá sem nada no histórico, seja clicando no "x" do terminal ou executando o script.
Caso não queira esse comportamento, não acrescente esse bloco no ~/.bashrc ou deixe comentado, neste caso, ao executar o script, tanto pelo ícone de atalho quanto pelo terminal, o histórico será limpo, menos a sessão do Bash atual, ou seja, os comandos da última sessão ficarão no histórico.
No Debian, por exemplo, crie um Lançador (atalho) na área de trabalho e coloque dentro:
[Desktop Entry] Version=1.0 Type=Application Name=Terminar Comment=Fecha o terminal e apaga o histórico Exec=/home/kluster/Terminar.sh Icon=utilities-terminal Terminal=false Categories=Utility;