Papelera para la consola

De Guía Ubuntu
Revisión a fecha de 17:50 24 ene 2008; Monkiki (Discusión | contribuciones)

(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar

Seguramente alguna vez has hecho un rm en la consola para borrar un fichero y al momento te das cuenta de que has borrado lo que no era. Particularmente desastroso es el uso de rm -rf. Recuperar esos ficheros ahora no es tarea fácil. Incluso puede ser que no haya forma de hacerlo completamente. En definitiva: D-E-S-A-S-T-R-E.

Sin embargo existe una ayuda. Un equivalente a la papelera de GNOME pero para la línea de comandos. La solución viene a través del paquete libtrash.

$ sudo aptitude install libtrash

Para que surta efecto, tienes que añadir en el .bashrc una nueva variable de entorno LD_PRELOAD (carga en memoria la librería dinámica que le indiquemos) con la ruta a la librería:

$ echo "export LD_PRELOAD=/usr/lib/libtrash/libtrash.so.2.4" >> ~/.bashrc

Ahora cierra la consola y vuelve a abrirla para que se ejecute el .bashrc. Ahora vamos a probar nuestros nuevos superpoderes. Creamos un archivo cualquiera:

$ echo "hola" > hola.txt

y ahora lo borramos

$ rm hola.txt

el archivo habrá ido a parar a un directorio Trash, que es el que nos hace de papelera.

Pero esto puede mejorar aún más: libtrash tiene un archivo de configuración que nos permite indica el directorio a utilizar como papelera, entre otras cosas. Si le indicamos .Trash, que es el archivo que usa GNOME como papelera, ¡cuando borremos un archivo este ira a parar a la papelera de GNOME y podremos borrarlo desde allí de forma gráfica!

$ echo "TRASH_CAN = .Trash" > ~/.libtrash