Quando usamos o clear
comando ou Ctrl+ Lno terminal, ele limpa o terminal, mas ainda podemos voltar para exibir os últimos comandos usados. Existe uma maneira de limpar completamente o terminal?
59
Quando usamos o clear
comando ou Ctrl+ Lno terminal, ele limpa o terminal, mas ainda podemos voltar para exibir os últimos comandos usados. Existe uma maneira de limpar completamente o terminal?
Respostas:
Você pode usar
tput reset
.Além
reset
etput reset
você pode usar o seguinte script de shell.Isso envia caracteres de controle
Esc-C
para o console que redefine o terminal.Palavras-chave do Google: Sequências de controle do console Linux
man console_codes
diz:fonte
tput reset
é mais rápido do quereset
no Ubuntu 16.04, pelo menosVocê pode usar o
reset
comando que redefinirá as configurações do terminal.fonte
Sei que você está em um terminal gnomo, mas pensei em responder com uma dica para outras pessoas que possam estar (como eu) em um Mac:
Se você estiver usando
Terminal.app
ouiTerm.app
entãoControl+L
rolar para cima para que o terminal fique em branco, masCmd+K
na verdade redefinirá o terminal / limpará a rolagem para trás.Ou, se você puder definir as preferências do teclado para o seu terminal, poderá atribuir algo como
Ctrl+K
a entrada,echo -e \\033c
como mencionado acima.fonte
Cmd+K
é tudo que eu queria. tyA resposta de Anthon funciona no KDE Konsole, mas não no urxvt. No urxvt, eu uso o reset há alguns anos para limpar a rolagem (junto com todas as outras coisas que faz) e não estava satisfeito por não funcionar no Konsole. Então agora para Linux eu tenho um novo alias:
Mas isso não funciona no OS X.
tput reset
não funciona em nenhum contexto AFAICT.No KDE Konsole, ctrl- shift- klimpa a rolagem (incluindo o prompt do shell atual, para que fique completamente vazio). No iTerm ou no terminal da Apple no OS X, cmd- shift- ktambém limpa a rolagem. Para adicionar este recurso ao urxvt, adicione-o a ~ / .Xresources:
fonte
allclear(){
`echo" Limpando terminal e scrollback ... "` `sleep 1.5`` clear; echo -e "\ 033c \ e [3J" `}
` Edit: Não é possível fazer a formatação funcionar. Se alguém puder editar isso para que fique legível, eu agradeceria.Encontrei isso na net anos atrás e funciona bem para mim. Ele limpa completamente o terminal sem histórico de rolagem.
fonte
Mapeei F12para limpar a tela em cada uma das seguintes conchas: bash , csh e casca de peixe . Meu comando é diferente de todos os anteriores porque preserva o que você já digitou na linha atual.
(Nota: todas as configurações abaixo dependem do terminal, mas espero que funcionem virtualmente em todos os lugares)
bater
Abra o arquivo
~/.inputrc
e insira a seguinte linha:"\e[24~": "\C-k \C-uecho -ne '\\ec\\e[3J'; history -d $((HISTCMD-1))\n\C-y\C-?"
Para disponibilizar a nova ligação de chave, abra um novo terminal ou digite Ctrl+ Xe Ctrl+ Rpara recarregar o arquivo .inputrc no terminal atual.
Explicação
O arquivo ~ / .inputrc controla as ligações de teclas do terminal bash.
Sobre a linha:
"\e[24~"
,, mapeia a chave F12.C-k
( Ctrl+ X) limpa o anel de interrupção (memória de cópia e passado do bash).C-u
( Ctrl+ U) envia a linha atual para o kill-ring e a apaga.echo -ne '\\ec\\e[3J'; history -d $((HISTCMD-1))\n
envia dois comandos agrupados para o terminal. Eles são separados por;
e terminados por\n
.echo -ne '\\ec\\e[3J'
tela é limpa.history -d $((HISTCMD-1))
evita esses dois comandos de entrar na história.C-y
( Ctrl+ Y) cola o kill-ring armazenado peloC-u
comando.C-?
( Ctrl+ ?) é equivalente Backspacee remove o espaço inserido na etapa 3 acima.Referências:
csh
Digite o comando abaixo.
bindkey -c "^[[24~" "echo -ne '\ec\e[3J'"
Também pode ser inserido no seu
.cshrc
arquivo para carregar a ligação de teclas em todos os novos terminais.(Sim, é muito mais simples que no bash)
casca de peixe
Digite o comando abaixo.
bind -k f12 "echo -ne '\ec\e[3J'; commandline -f repaint"
Você pode editar e salvar a função
fish_user_key_bindings
para carregar a ligação de teclas em todos os novos terminais.(Sim, é muito mais simples que no bash)
fonte
[Ubuntu 16.04]
O arquivo .bash_history é criado no diretório inicial do usuário assim que o terminal é fechado
É útil, mas você pode excluí-lo se desejar. No entanto, ele seria criado toda vez que você terminar de usar o terminal.
Você pode excluí-lo manualmente de:
seu navegador de arquivos.
o terminal: lembre-se de que um novo arquivo .bash_history será criado quando você fechar o terminal (com base em sua configuração padrão).
Ou você pode chamar uma função personalizada se salvar a funcionalidade necessária em um arquivo vinculado a partir do bashrc. Você pode editar o próprio bashrc se quiser colocar seu código lá, mas os próximos exemplos estão em um arquivo separado
Honestamente, isso não é útil para mim, mas se você deseja excluir o histórico de comandos antes de sair, você pode fazer isso:
.bash_custom #este é o meu arquivo personalizado
depois, na parte inferior, adicione o nome e o caminho do meu arquivo
.bashrc # este é o arquivo de configuração do bash (eu acho)
e isso é tudo.
MAS, para fazer exatamente o que você deseja, basta esta função no seu arquivo personalizado e vinculá-la:
Ou apenas coloque a função no .bashrc, se desejar, mas dessa forma você provavelmente precisará de uma instrução de exportação após a função. Não tenho certeza e se o arquivo for atualizado provavelmente perdeu suas funções. Não tenho certeza disso também: D.
Lembre-se de que você precisa reiniciar o terminal ao editar o arquivo .bashrc ou o seu 'personalizado'.
fonte
Para mim, usando PuTTY no CentOS 7, clear deixa apenas o comando clear no scrollback, mas executar "clear && clear", duas instâncias do comando clear ao mesmo tempo, limpa completamente o scrollback e não deixa nenhuma barra de rolagem. Tente isso. É uma solução estranha, mas nenhuma dessas aqui eliminou a rolagem de forma eficaz, e isso é verdade.
fonte
Adicionado a
~/.inputrc
para vincular a limpeza completa a F12:fonte
No Fedora 30, a exclusão do histórico é feita removendo o arquivo $ HOME / .bash_history. A maneira mais fácil de limpar o arquivo de histórico do terminal através do teclado é:
nautilus
e pressione a Entertecla para abrir o aplicativo Arquivos (GNOME) (anteriormente conhecido como Nautilus)..bash_history
(que deve aparecer na barra de pesquisa se digitado imediatamente após a janela ser aberta; caso contrário, a barra de pesquisa pode ser acessada via Ctrl+ L).fonte
fonte
history -c
foi apresentado em duas respostas anteriores e foram excluídas por não serem respostas corretas para a pergunta. (2) Embora o fechamento da janela do terminal apague (provavelmente) a memória do terminal dos comandos anteriores, está longe de ser aparente que o OP queira fazer isso. … E PSexit
Não é garantido que um único comando feche a janela do terminal.