Método abreviado de teclado para almacenar el comando escrito y limpiar la línea


12

Usted conoce la situación: está a medio camino de escribir un comando largo (por ejemplo, un mensaje de confirmación) y se da cuenta de que ha olvidado ejecutar algún comando de requisito previo que no se puede agregar &&. Normalmente, cuando eso me sucede, selecciono lo que he escrito con el mouse, lo copio al portapapeles, presiono Ctrl-U para borrar la línea, ejecuto mi comando de requisito previo y pego el portapapeles. ¿Pero tal vez hay una mejor manera, preferiblemente sin necesidad de usar el mouse? Estoy buscando soluciones para bash y / o zsh.

Respuestas:


20

Después de haber usado CTRL-U, puede usar CTRL-Y para pegar lo que ha borrado. Funciona después de borrar una palabra o varias palabras con CTRL-W también.

Tenga en cuenta de esta manera que realmente no necesita copiar nada en el portapapeles o seleccionarlo con el mouse: CTRL-U en realidad tira de la línea a un portapapeles separado, por así decirlo.


5

Agregue un '#' al comienzo de su línea actual. Presiona enter para agregar el comentario a tu historial. Ejecute el comando de requisito previo. Ir al comando anterior y eliminar el #.


5

Esto se preguntó y discutió recientemente en el sitio Unix y Linux de SE. Mi respuesta explicó que si usa zsh como su shell, puede usar la función de línea de inserción para guardar su comando en progreso, ejecutar otra cosa, entonces su primer comando regresará y podrá finalizarlo. En .zshrc:

bindkey '^L' push-line

Luego use Ctrl+ Lpara suspender el comando actual y volver a él después de ejecutar otra cosa.

Se dieron varias otras respuestas, incluida la configuración de cómo hacer algo similar en bash y algunas versiones personalizadas de este incorporado en zsh.


0

Puede hacerlo Shift-Alt-3para comentar la línea actual e ir a la siguiente. A continuación, se pulsa up, Ctrl-e, Dely tadam!

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.