systemadmin.es » Utilidades » El historial de bash

El historial de bash

El historial puede tener un muy buen uso para recordar comandos y un muy malo para que te saquen los colores. Aún así, las veces que resulta útil compensa con creces las veces que nos da algun disgusto.

Normalmente se usa el historial mediante los cursores, pero su uso puede resultar incomodo ya que se acaban pulsando más veces los cursores que lo que tardaríamos en escribir de nuevo el comando. Se puede hacer un uso más optimo, veremos cómo:

Mediante el comando history sin parámetros veremos, numerados, los comandos que se han ejecutado:

# history
  500  ps -fea | grep sshd
  501  tc qdisc del dev eth2 root
  502  /etc/init.d/squid restart

Usando el operador ! podemos indicar mediante el número de comando cual queremos ejecutar. Por ejemplo:

  500  ps -fea | grep sshd
  501  tc qdisc del dev eth2 root
  502  /etc/init.d/squid restart
  503  history
# !500
ps -fea | grep sshd
root      7654     1  0 22:55 ?        00:00:00 /usr/sbin/sshd
root      9113  8978  0 23:43 pts/2    00:00:00 grep sshd

Aún así resulta incomodo buscar el número del comando, por lo que tenemos más opciones. Un ejemplo es el operator !!, el cual ejecuta el último comando. Por ejemplo:

  500  ps -fea | grep sshd
  501  tc qdisc del dev eth2 root
  502  /etc/init.d/squid restart
  503  history
  504  ps -fea | grep sshd
# !!
ps -fea | grep sshd
root      7654     1  0 22:55 ?        00:00:00 /usr/sbin/sshd
root      9113  8978  0 23:43 pts/2    00:00:00 grep sshd

Finalmente el operador más últil: !? Permite ejecutar el último comando que contenga la cadena que indicamos. Por ejemplo:

  500  ps -fea | grep sshd
  501  tc qdisc del dev eth2 root
  502  /etc/init.d/squid restart
  503  history
  504  ps -fea | grep sshd
  505  ps -fea | grep sshd
# !?qdi
tc qdisc del dev eth2 root

Finalmente, si no queremos que alguien nos saque los colores podemos limpiar el historial mediante:

# history -c

Relacionados

Imprimir Imprimir

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>