¿Hay alguna manera de limitar el tamaño de la Papelera?

12

Acabo de quedarme sin espacio en disco y tengo como 15 GB en mi basura. ¿Hay alguna manera de no conservar los artículos anteriores a 7 días o limitar el tamaño de la Papelera?

Necesito una manera de mantener esto administrado automáticamente.

Jon Erickson
fuente

Respuestas:

12

La Papelera es solo una carpeta (directorio) especial que Apple crea y administra a través del Finder para que tenga la capacidad de "recuperar" elementos fácilmente (eliminándolos de la Papelera) antes de eliminar por completo (Vaciar Papelera). Dado que este mecanismo es solo un directorio en su disco de inicio, técnicamente tiene todo el espacio del disco de inicio para usar en la Papelera si lo desea.

Si desea una medida de los archivos de eliminación "mágicos automáticos" anteriores a 7 días, puede usar un script bash simple:

find ~/.Trash -mtime +7 -exec /bin/rm -rf {} \;

Usando su editor de texto favorito, pegue la línea anterior en un nuevo archivo y luego guarde el archivo como empty_trash_older_than_7_days.sh. En el terminal, asegúrese de usar el chmodcomando para hacerlo ejecutable como tal:chmod +x /path/to/empty_trash_older_than_7_days.sh

Este comando, cuando se ejecuta en la terminal, encontrará todos los archivos en su Papelera (archivos de su volumen de Inicio solamente, más sobre esto en un minuto) que tienen más de 7 días (desde el momento en que ejecuta este comando) y pasan cada archivo al rm -rfcomando. Dado que rmes un comando de Unix y no tiene noción de la Papelera, solo hace una eliminación de Unix que para nuestro propósito es una eliminación real (como Vaciar la Papelera).

Luego puede usar cron (si no está familiarizado con Cron, consulte la entrada de Cron en Wikipedia ) para configurar una ejecución recurrente de este script.

Personalmente, mi voto es entrenarse para usar el Empty Trashelemento del menú cada pocos minutos, días, semanas.

PD: si todo este Unix-ese es demasiado aterrador, apostaría a que hay aplicaciones Mac simples que la gente ha escrito para hacer este tipo de cosas. Esperemos que alguien con algún conocimiento de uno o más de estos tipos de aplicaciones pueda ofrecer una respuesta o dos como contrapeso.

¡Buena suerte!

PD: Olvidé hablar sobre el volumen que no es de inicio ... Si elimina un archivo de un volumen que NO sea ​​el volumen de inicio, este archivo irá a la carpeta .Trash en ese volumen. Por ejemplo, si tuviera un volumen con nombre Foo, habría una carpeta .Trash en /Volumes/Foo/.Trash. Lo que he documentado anteriormente no eliminará esos archivos. Tendría que configurar algo similar para cada volumen que tenga.

dolor
fuente
2
OS X findtambién tiene una -deletebandera para que pueda usar find ~/.Trash -mtime +7 -delete. Las fechas de modificación no son una muy buena indicación de cuándo se eliminaron los archivos. Sin embargo, no conozco ninguna forma de acceder a los metadatos de fecha de eliminación que se muestran en Finder.
Lri
De acuerdo con el comentario anterior ... Aunque este es un buen script, en la práctica elimina cosas por su fecha de modificación. Por lo tanto, si descarto una carpeta de cosas viejas de vez en cuando y luego ejecuto el script inmediatamente, la mayoría de las cosas de esa carpeta se eliminan. Sería bueno si pudiéramos encontrar un parámetro para la fecha eliminada en el archivo.
Jowie
@Jowie podemos usar -atime, que es el último tiempo de acceso. Por cierto, hay otro problema: esto deja directorios vacíos en la Papelera ...
Nombre para mostrar el
3

Hazel se puede configurar para mantener los archivos solo durante un cierto período de tiempo y para mantener la basura por debajo de un cierto tamaño. También puede agregar reglas personalizadas para eliminar archivos grandes de inmediato o eliminar archivos en las carpetas de basura de otros volúmenes.

Lri
fuente
0

John Wiegley es dirscan , en particular el cleanup.pyejemplo, está diseñado para hacer frente a los problemas identificados con los planteamientos usando find. dirscanproporciona una solución de propósito más general, ya que puede configurarlo para escanear / limpiar diferentes directorios de diferentes maneras.

jwd630
fuente