Considere o seguinte prompt do bash, onde ^
denota o local do prompt:
$ git commit -am "[bug 123456] Do this and that with the bug"
^
Suponha que eu queira confirmar novamente o mesmo bug, com uma mensagem de confirmação diferente. Existe uma maneira de excluir o texto da posição do cursor até o final da linha?
command-line
bash
Adam Matan
fonte
fonte
Brexit - the UK leaves Europe
: U exclui para o início e K até o fim.Depende se você está usando o modo de edição vi (
set -o vi
) ou emacs (set -o emacs
) dentro do seu shell.Por padrão, seu shell geralmente usa como padrão o modo de edição do emacs.
No modo emacs, a exclusão para o final da linha pode ser realizada usando o comando ctrl- k.
Se, no entanto, você estiver usando o modo de edição vi em seu shell de comando, o mesmo resultado poderá ser obtido digitando Esc(o que o colocará no modo de comando) seguido por d- $(se você deseja excluir a linha inteira, insira dd).
Se você não souber ao certo qual modo de edição está usando no shell, insira o comando
set -o
na linha de comando e poderá determinar qual modo de edição está usando:Para alternar o modo de edição da linha de comando, basta digitar:
ou
fonte
K
significa kill (a linha que começa na posição do cursor).D
funciona da mesma forma qued$
Caso você esteja familiarizado apenas com um dos Zsh e Bash, aqui estão as combinações de teclas equivalentes de que você pode precisar:
bater
zsh
outra informação relevante
Para obter uma lista de combinações de teclas:
fonte
"^k"
para Control + K?"\C-k"