Use Ctrl + K para apagar do cursor até o final da linha.
Use Ctrl + U para apagar do cursor para o começo da linha.
Considere o seguinte prompt bash, em que ^
indica a localização do prompt:
$ git commit -am "[bug 123456] Do this and that with the bug"
^
Suponha que eu queira confirmar novamente o mesmo erro, com uma mensagem de confirmação diferente. Existe uma maneira de excluir o texto da posição do cursor até o final da linha?
Use Ctrl + K para apagar do cursor até o final da linha.
Use Ctrl + U para apagar do cursor para o começo da linha.
Depende se você está usando o modo de edição vi ( set -o vi
) ou emacs ( set -o emacs
) no seu shell.
Por padrão, seu shell geralmente é padronizado para o modo de edição do emacs.
No modo emacs, a exclusão até o final da linha pode ser feita 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 pode ser obtido digitando Esc (que o colocará no modo de comando) seguido por d - $ (se você quiser deletar toda a linha, digite dd ).
Se você está incerto sobre qual modo de edição você está usando atualmente em seu shell, digite o comando set -o
na linha de comando e você será capaz de determinar qual modo de edição você está usando atualmente:
set -o
...snip...
emacs on
...snip...
vi off
Para alternar seu modo de edição de linha de comando, simplesmente digite:
set -o vi
ou
set -o emacs
Caso você esteja familiarizado apenas com um dos Zsh e Bash, aqui estão os equivalentes de teclas que você pode precisar:
bind '"\C-k"':kill-line
bindkey "\C-k" vi-kill-eol
Outras informações relevantes
Para obter uma lista de associações de teclas:
# bash
bind -p
# zsh
bindkey
Tags command-line bash