Bash: eliminar palabra delante del cursor

64

Considere el siguiente mensaje bash, donde ^ indica la ubicación de la solicitud:

svn commit -m very/long/path/to/some/file "[bug 123456] Fix the pixel issue"
              ^

Me gustaría enviar un archivo diferente con el mismo mensaje. ¿Cómo puedo eliminar la palabra actual, desde la ubicación del cursor hasta el siguiente espacio? ¿Hay también un atajo para la eliminación hacia atrás, forma el cursor hacia el primer espacio hacia atrás?

Actualización: ctrl + w borra hacia atrás, pero ¿qué atajo borra una palabra hacia adelante?

    
pregunta Adam Matan 08.04.2013 - 17:12

2 respuestas

47

Respondí una pregunta similar aquí: enlace :

  

Bash tiene comandos readline que no están vinculados por defecto. Puedes encontrar   ellos a la referencia:    enlace

     

El comando que estás buscando se llama "shell-backward-kill-word". Tú   tiene que seleccionar el atajo primero. Usemos Crtl + p, ya que es "anterior   comando "- igual que la flecha hacia arriba.

bind '"\C-p": shell-backward-kill-word'

La única diferencia es que debe usar el comando "shell-kill-word" en su lugar, ya que quiere eliminar hacia adelante.

También hay un comando "kill-word" con acceso directo Meta + d (prueba Esc + d si no tienes la tecla Meta). Eliminará solo una parte de la ruta a la vez.

    
respondido por el Nykakin 10.04.2013 - 18:04
6

Probado tanto el esc + d como alt / optativo + d en OSX Mavericks y funcionan allí también.

    
respondido por el visyoual 30.11.2015 - 17:24

Lea otras preguntas en las etiquetas