reemplazo en bash

Alvaro Herrera alvherre en dcc.uchile.cl
Sab Abr 17 21:03:04 CLT 2004


Hola,

Hace un par de dias me di cuenta de un truco en bash que no conocia:
reemplazo en la historia de mandatos con el caracter ^  Por ejemplo, si
acabo de ejecutar

rm -fr /home/alvherre
luego hago
^alvherre^vonbrand
y automaticamente se ejecuta
rm -fr /home/vonbrand

Por ej. yo tengo varios directorios fuentes de Postgres, y hago "make"
fuera del directorio fuente (para hacer diffs limpios).  Entonces tengo
un arbol
/home/alvherre/CVS/pgsql/source/
y otro
/home/alvherre/CVS/pgsql/build/
y otro
/home/alvherre/CVS/pgsql/install/

y dentro tengo directorios 00orig, 01xactstate, 02trans_remove, etc,
donde hay distintas modificaciones (todos estos son checkouts de un
mismo CVS).

Entonces hago
cd /home/alvherre/CVS/pgsql/source/07first

pero si quiero irme al "build" de esa rama, hago
^source^build

y eso reemplaza la palabra "source" por la palabra "build" en el comando
anterior y lo ejecuta.

Lo encontré harto cómodo ... quizás a alguien le interese saber.

Chao.

-- 
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
Hi! I'm a .signature virus!
cp me into your .signature file to help me spread!


Más información sobre la lista de distribución Linux