Página principal » cómo » ¿Cómo cambiar rápidamente la primera palabra en un comando Bash?

    ¿Cómo cambiar rápidamente la primera palabra en un comando Bash?

    Si su flujo de trabajo se llena con muchas acciones repetitivas, nunca está de más buscar formas de mejorar y optimizar su flujo de trabajo. La publicación de preguntas y respuestas de SuperUser de hoy tiene algunas sugerencias útiles para un lector que busca mejorar su flujo de trabajo.

    La sesión de Preguntas y Respuestas de hoy nos llega por cortesía de SuperUser, una subdivisión de Stack Exchange, un grupo de sitios web de preguntas y respuestas impulsado por la comunidad..

    Captura de pantalla cortesía de Matt Joyce (Flickr).

    La pregunta

    La moneda del lector Superusuario quiere saber cómo cambiar rápidamente la primera palabra en un comando de bash:

    Me gustaría mejorar mi flujo de trabajo en bash y me di cuenta de que a menudo quiero ejecutar el mismo comando en un ejecutable diferente..

    Algunos ejemplos

    1.) Git

    2.) Bash

    Sé que puedo golpear Ctrl + a entonces Del para eliminar la primera palabra, pero me pregunto si hay una manera más rápida de hacerlo.

    ¿Existe una forma más rápida para que la moneda cambie la primera palabra en los comandos de bash??

    La respuesta

    Superusuario contribuyentes Spiff, Hastur, jjlin. Y Gustavo Giraldez tiene la respuesta para nosotros. En primer lugar, Spiff:

    !$ se expande hasta la última palabra de su comando anterior. Para que pudieras hacer:

    O

    Sus ejemplos solo repitieron la última palabra, así que! $ Funcionó bien. Si en realidad tenía muchos argumentos que quería repetir, y solo quería cambiar la primera palabra, puede usar! *, Que se expande a todas las palabras del comando anterior, excepto el cero..

    Consulte la sección "EXPANSIÓN HISTÓRICA" de la página de manual de bash. Hay mucha flexibilidad allí.

    Seguido por la respuesta de Hastur:

    Me gustaría añadir una advertencia (ver la respuesta de Spiff arriba). Con! $, No tiene control visual total de la línea que está ejecutando. Los resultados pueden ser dañinos a veces, especialmente si incurres en una impresión incorrecta. Toma lo que necesita de la historia para expandirse.

    Por lo tanto, si escribe el último comando con un espacio en blanco al principio, es probable que este comando no termine del historial. Cuando ejecute su nuevo comando con! $, El shell no tomará los parámetros de la última línea de comando ingresada, sino solo la última parte del historial..

    Aquí hay algunas palabras y comandos más útiles.

    Entonces la respuesta de jjlin:

    Ctrl + a para ir al principio de la línea, entonces Alt + d para borrar la primera palabra.

    Y nuestra respuesta final de Gustavo Giraldez:

    El atajo de eliminar palabra es en realidad Meta + d, y Meta normalmente se asigna a Alt En máquinas Linux. En plataformas donde este no es el caso, una alternativa para obtener el Meta modificador es usar Esc como prefijo Puedes leer más sobre el Meta Key aquí.


    ¿Tienes algo que agregar a la explicación? Apaga el sonido en los comentarios. ¿Quieres leer más respuestas de otros usuarios de Stack Exchange con experiencia en tecnología? Echa un vistazo a la discusión completa aquí.