

El entorno de la terminal en GNU/Linux almacena las órdenes que escribimos, de forma que podemos utilizar las flechas para movernos por las entradas anteriores, modificarlas según nuestras necesidades y volverlas a ejecutar. Sin embargo, hay algunos atajos que nos lo ponen todavía más fácil.
Hoy hablaremos de tres elementos: los designadores de eventos, los designadores de palabras y los modificadores. ¿Te suena todo a chino? No te preocupes, es normal. Poniendo un poco de atención y teniendo al lado una terminal con la que practicar enseguida dominarás todas estas técnicas que, si utilizas la terminal a menudo, seguro que te interesan.
El primer elemento que veremos son los designadores de eventos, un nombre un tanto barroco que en realidad se refiere a reemplazos por líneas del historial. Solo deberemos poner un símbolo «!» seguido del número de líneas que queremos retroceder en el historial, o seguido de la búsqueda que deseemos hacer.
El segundo elemento de esta receta son los designadores de palabras, que se utilizan en conjunción con los anteriores para referirse a palabras dentro de las líneas seleccionadas con los designadores de eventos que acabamos de ver. Se encadenan mediante un símbolo «:».
Por último, están los modificadores, que pueden utilizarse para modificar esas palabras o líneas, que es lo más interesante de todo este asunto, a mi parecer. Se utilizan como los designadores de palabras, encadenados con un símbolo «:» cada uno.
Cuando utilices los designadores de eventos verás la línea resultante ya con todos los reemplazos hechos después que pulses la tecla intro, así puedes ir viendo los resultados de tus acciones. De todas formas unos ejemplos nunca están de más, así que:
cat /etx/apt/sources.list
^etx^etc
cp !!:$ !!:$:t:h
En la primera línea lo que hago es intentar listar el contenido del archivo «/etc/apt/sources.list», pero me equivoco. En la segunda línea corrijo el primer comando, cambiando «etx» por «etc». Rizando un poco el rizo, en la tercera línea copio «/etc/apt/sources.list» en el archivo «sources» del directorio actual.
sudo cp /etc/apt/sources.list !#:$.bak
En este otro ejemplo, estoy haciendo una copia de seguridad de «/etc/apt/sources.list» en «/etc/apt/sources.list.bak» pero en lugar de volver a escribir el archivo por segunda vez, utilizo el designador de evento que me devuelve toda la línea escrita hasta ese punto «!#», obtengo solo la última palabra «:$» y finalmente le añado el «.bak».
Vía: Richard WM Jones | Foto original: Hyougushi

¡Gracias por dejarnos tus comentarios! — por favor intenta mantener tu opinión relacionada con la anotación, no usar insultos, agresiones, o faltas de respeto al autor y otros participantes de la discusión, en caso de no hacerlo tu comentario podría ser borrado.
Existe mucha más información en nuestra política de comentarios.
No soy muy fanatico de la terminal pero a veces se necesita para muchas cosas, ahora me da pereza practicar con esos nuevos comandos =P
No te preocupes, a mí también me pasa lo mismo. Lo de la terminal la uso sólo en caso de emergencias, como por ejemplo, para añadir repositorios, claves GPG ó PGP, crear directorios con sudo, abrir el root, en fin…
Bueno por la terminal.
A diferencia de los comentarios anteriores, pienso que la consola es indispensable para movernos por ese mundo de carpeta de linux, asi que estos comandos me van a ser de mucha utilidad. Gracias Jorge