Hacks para Unix-like: contenedor de basura
Crear un contenedor de basura Entorno de usuario | ||
---|---|---|
Dificultad : | Muy fácil | |
Necesitas : | ||
Programas relacionados : | ||
Comandos relacionados : |
mkdir | |
Archivos relacionados : | ~/.bashrc ~/.cshrc | |
Estandares relacionados : | ||
Enlaces relacionados relacionados : |
Por qué crear un contenedor de basura
editarEn algunos sistemas unix no existe el concepto de contenedor de basura (o papelera), por lo cual cuando borramos un archivo (con el comando rm) este se pierde. Muchos usuarios prefieren un enfoque basado en un contenedor de archivos borrados donde van a parar aquellos archivos que son ""borrados", que en realidad únicamente son movidos a una carpeta intermedia denominada comúnmente papelera
Cómo crear nuestro contenedor de basura o papelera
editarPara crear nuestra papelera, lo primero es crear nuestro directorio para la papelera,
mkdir ~/.trash |
Para simular el comportamiento de un contenedor de basura podemos hacer uso de un pequeño script, situándolo en el directorio ~/bin/ y cambiando los permisos de necesarios.
#!/bin/sh # Script papelera, mueve los archivos a la carpeta .trash mv $1 ~/.trash/ chmod +x ~/bin/trash |
El siguiente paso es sustituir el comando rm por nuestro script, para alterar el comportamiento de un comando en un shell se puede usar un alias editando nuestro archivo de shell correspondiente (puede ser por ejemplo ~/.cshrc o ~/.bashrc). Con esto al escribir rm sobre la línea de comandos esta interpretará automáticamente que queremos llamar a nuestro script, que a su vez ejecutara un comando mv
alias rm papelera |
Para vaciar la papelera que hemos creado debemos llamar al comando rm (hay que asegurarse de que se llama a rm y no al alias que se ha configurado), para ello se indica con una '\' que queremos que se ignoren el alias definido, otra opción sería crear un script más complejo mediante el cual se pueda vaciar la papelera.
\rm ~/.trash/* |
Libtrash
editarOtra opcion muy interesante para tener nuestra contenedor de basura es libtrash