Algunos trucos de consola

ConsolaNunca es tarde para aprender nuevos trucos, y justamente hace unos días, leyendo Red Hat Magazine, he aprendido algunos para la búsqueda en el historial de la consola de sistemas tipo Unix que usen Bash.

Nota: En los ejemplos, el $ indica el prompt (cursor) de la consola, no es algo que tenga que tipearse. Las líneas que no tienen $ indican el resultado (lo que “arroja” la consola).

Para ver el historial de comandos ejecutados:

$history

Nos dará como resultado algo así:

(...)
453  cd /media/
454  ls
455  cd disk
(...)

* Si queremos ver el historial de algún comando en particular (en este ejemplo el comando mogrify):

$history | grep mogrify

Tendremos:

(...)
  380  mogrify -resize 50% p1000274.jpg
  482  man mogrify
  483  mogrify -resize 1600x1200 p1000895.jpg
  485  mogrify -resize 1600x1200 *.jpg
(...)

* Podremos volver a ejecutar algún comando del historial anteponiendo ! al número de línea. Por ejemplo:

$!454
ls
archivo  archivo2

* Si queremos ejecutar nuevamente la última instancia de un comando, usaremos !?. Por ejemplo:

$ touch archivo
$!?touch
touch archivo

En el ejemplo anterior usamos touch para crear archivo. Luego, con !?touch volvemos a ejecutar el comando touch (esta vez, actualiza la fecha de modificación de archivo)

* Si lo que queremos es tan sólo conocer cuál fue la última instancia de algún comando sin ejecutarlo, añadimos ?:p

$!?touch?:p

Lo anterior mostrará el comando sin ejecutarlo y lo agregará como último término en el historial. Luego, para ejecutarlo nuevamente bastará presionar FLECHA ARRIBA y ENTER.

En el artículo también podremos leer algunos trucos que dan los lectores de Red Hat Magazine:

* Podremos realizar una búsqueda “interactiva” con CTRL + R. Presionamos estas dos teclas y luego comenzamos a escribir el comando a buscar, automáticamente se completará basándose en el historial. Si deseamos desplazarnos por más resultados, presionamos nuevamente CTRL + R.

* Con !$ obtendremos el último argumento del último comando ejecutado. Por ejemplo:

Creamos 2 archivos usando touch:

$touch archivo1 archivo2

Ahora, eliminamos sólo archivo2:

$ rm !$
rm archivo2

* Con !! volvemos a ejecutar el último comando (hace lo mismo que FLECHA ARRIBA y ENTER).

Espero que les haya sido de utilidad. Si conocen más trucos para el historial de consola, pónganlos en los comentarios.

3 Comentarios

  1. paspas
    Comentado Enero 7, 2008 a las 10:13 am | Permalink

    Has probado CTRL+r ? te permite buscar una ejecución que hiciste en el terminal tecleando letras que lo contengan…

    muy util.

    un saludo

  2. Comentado Enero 7, 2008 a las 10:20 am | Permalink

    Si paspas, también está en el post

  3. paspas
    Comentado Enero 7, 2008 a las 2:09 pm | Permalink

    argghhh!!!!, perdona me salté el párrafo!

    un saludo.

Escribe un Comentario

Su correo nunca será publicado ni compartido. Los campos requeridos están marcados *

*
*
CC 2009 El Módem. Some rights reserved.