Usando ^W
(unix-word-rubout), posso excluir facilmente uma única "palavra" do comando atual no meu shell bash.
No entanto, ao lidar com argumentos entre aspas que contêm espaços (ou argumentos sem aspas que contêm espaços com escape de barra invertida), isso não funciona bem, pois exclui apenas uma palavra e não o argumento inteiro.
Então, estou procurando uma maneira de excluir um argumento inteiro.
Exemplo (o cursor está sempre no final):
$ foo --bar "foo bar" meow
[black magic]
$ foo --bar "foo bar"
[black magic]
$ foo --bar
[black magic]
$ foo
Respostas:
O Bash possui comandos de linha de leitura que não são vinculados por padrão. Você pode encontrá-los em referência: http://www.gnu.org/software/bash/manual/html_node/Bindable-Readline-Commands.html#Bindable-Readline-Commands
O comando que você está procurando é chamado "shell-backward-kill-word". Você deve selecionar o atalho primeiro. Vamos usar Crtl + p, já que é "comando anterior" - o mesmo que a seta para cima.
fonte