A los efectos de esta pregunta, "directorio grande" significa, por ejemplo, un repositorio git de kernel de Linux o la fuente Chromium.
Si tengo rm -rf
un directorio grande como este desde el shell, se elimina en solo un par de segundos como máximo.
Si lo muevo a la papelera primero y luego la vacío, la primera operación tarda menos de un segundo, luego la eliminación real lleva varios minutos (estamos hablando de cifras dobles).
¿Por qué vaciar la basura tan lentamente? ¿Qué está haciendo cuando dice "prepararse"? ¿Cuánta preparación se necesita para correr rm -rf ~/.local/share/Trash/
?
libnautilus-private/nautilus-file-operations.c
en la fuente (apt-get source nautilus
). Sin embargo, no tengo la diligencia y la paciencia para leer C. Pregunta interesante. +1rm -rf ~/.local/share/Trash
Podría ser más rápido. Ver askubuntu.com/a/468722/2273Respuestas:
Cuando ocurre la primera operación, simplemente mueve los archivos a la papelera.
Cuando "desecha" esos archivos, carga todo el archivo de árbol en la memoria y luego elimina cada archivo uno por uno. Esto permite que los cálculos de tiempo sepan cuánto tiempo se tarda en eliminar el archivo, cuántos archivos se deben eliminar, qué tan grandes son esos archivos, aunque la mayoría de los parámetros no se usan aquí, y le permite presionar esa pequeña cruz roja para detener el proceso
Es por eso que siempre borro del shell
fuente