Suponha que no bash você comece a escrever um comando como:
$ rm -rf /foo/bar/really/long/path/here
e depois perceba que você não deseja executar isso, afinal. Existe uma maneira de limpar a entrada com um ou dois pressionamentos de tecla?
O que venho fazendo ultimamente é preceder o eco e colocar a entrada entre aspas (Ctrl + A echo "
,, Ctrl + E, "
) e pressionar Enter. Existe uma maneira mais rápida?
Respostas:
Pressione Ctrl- Upara excluir tudo antes do cursor. O comando excluído será armazenado em um buffer. Pressione Ctrl- Ypara colar o comando excluído.
(Opcional: pressione Endou Ctrl- Epara pular para o final da entrada primeiro.)
Como alternativa, pressione Ctrl- Cpara abortar o que você está digitando.
fonte
stty -a
. E isso funcionará com qualquer programa que não esteja modificando ativamente os controles do terminal.Experimente Ctrl+ U. Isso limpa a linha de entrada.
fonte
Encontre uma referência curta em http://www.ice2o.com/bash_quick_ref.html durante a pesquisa .
ctrl+ e(se não estiver no final da linha) mais ctrl+ ufará isso.
fonte
Ctrl- U, Ctrl- Kfaz o truque também.
Ctrl- Uexclui tudo do início da linha até o cursor, Ctrl- Kexclui tudo do cursor até o final da linha. (Às vezes, é útil usar apenas um deles.)
fonte
Existem duas opções para fazer isso
ctrl+ c- isso limpa toda a linha, não importa onde esteja o cursor.
ctrl+ u- limpa a linha da posição do cursor até o início.
fonte
Um bom atalho está pressionando Esc#. Anexará um
#
caractere (tornando a linha um comentário) e pressione enter. Se você decidir que ainda precisa do comando, ainda o possui em seu histórico :)fonte
Pressionar Escmais Backspaceno bash limpará tudo até a posição do cursor.
(No Cygwin, isso limpará a entrada até a próxima palavra. As palavras são separadas por espaços, sublinhados, ...)
fonte
Considere que usar Ctrl- U(ou Ctrl- Ee então Ctrl- U) armazenará o que você limpa em um buffer para que você possa colá-lo posteriormente usando Ctrl- Y.
fonte
Se você estiver usando o Bash no modo vi (defina-o com
set -o vi
), pressione Escpara alternar para o modo normal do vi e digitedd
para excluir a linha atual!fonte
Essa é uma expansão da resposta de knittl que armazena a linha no histórico do console prefixando com um hash. Superando desvantagens da área de transferência, como substituição acidental ou impossibilidade de visualizar a linha de corte para referência.
Linha de comentário e retornar novo prompt
Use um dos atalhos de tecla:
Um caractere de hash
#
será anexado à linha, transformando a linha inteira em um comentário. Ele também retornará um novo prompt, como se enter fosse pressionado pelo usuário. por exemploRecuperar linha comentada
Para recuperar a linha antiga do histórico do console, use um dos seguintes atalhos:
Repita o atalho da tecla até a linha desejada aparecer.
Remoção rápida de Hash Prefix
Para remover o
#
prefixo de hash da linha, existem algumas opções diferentes disponíveis:Remova o primeiro caractere e execute imediatamente o comando:
Mova o cursor para iniciar e remover o primeiro caractere, sem executar o comando:
fonte
Para excluir a linha atual, tente:
Ctrl- X, Ctrl-U
Como alternativa, você pode usar:
Esc-D
que requer em ~ / .inputrc:
consulte: http://codesnippets.joyent.com/posts/show/1690
fonte
"\e\e": kill-whole-line
(tem que ser pressionado duas vezes a tecla