Gibt es eine Möglichkeit, die Größe des Papierkorbs zu begrenzen?

Mir ist gerade der Speicherplatz ausgegangen und ich habe ungefähr 15 GB in meinem Papierkorb. Gibt es eine Möglichkeit, Elemente, die älter als beispielsweise 7 Tage sind, nicht aufzubewahren oder die Größe des Papierkorbs zu begrenzen?

Ich brauche eine Möglichkeit, dies automatisch zu verwalten.

Antworten (3)

Der Papierkorb ist nur ein spezieller Ordner (Verzeichnis), den Apple über den Finder erstellt und verwaltet, so dass Sie die Möglichkeit haben, Elemente einfach "wiederherstellen" (indem Sie sie aus dem Papierkorb entfernen), bevor Sie sie vollständig löschen (Papierkorb leeren). Da es sich bei diesem Mechanismus nur um ein Verzeichnis auf Ihrem Startvolume handelt, haben Sie technisch gesehen den gesamten Speicherplatz Ihres Startvolumes, den Sie für den Papierkorb verwenden können, wenn Sie möchten.

Wenn Sie ein gewisses Maß an „automatischen“ Entfernungsdateien wünschen, die älter als 7 Tage sind, können Sie ein einfaches Bash-Skript verwenden:

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

Fügen Sie die obige Zeile mit Ihrem bevorzugten Texteditor in eine neue Datei ein und speichern Sie die Datei dann als empty_trash_older_than_7_days.sh. Verwenden Sie im Terminal unbedingt den chmodBefehl, um es als solches ausführbar zu machen:chmod +x /path/to/empty_trash_older_than_7_days.sh

Wenn dieser Befehl im Terminal ausgeführt wird, findet er alle Dateien in Ihrem Papierkorb (nur Dateien aus Ihrem Startvolume – mehr dazu gleich), die älter als 7 Tage sind (ab dem Zeitpunkt, an dem Sie diesen Befehl ausführen) und passieren jede Datei zum rm -rfBefehl. Da rmes sich um einen Unix-Befehl handelt und keine Ahnung vom Papierkorb hat, führt er nur eine Unix-Löschung durch, die für unsere Zwecke eine echte Löschung ist (wie das Leeren des Papierkorbs).

Sie könnten dann cron verwenden (wenn Sie mit Cron nicht vertraut sind, sehen Sie sich den feinen Cron-Eintrag auf Wikipedia an ), um eine wiederkehrende Ausführung dieses Skripts einzurichten.

Persönlich stimme ich zu, sich einfach Empty Trashalle paar Minuten, Tage, Wochen darin zu üben, den Menüpunkt zu verwenden?

PS Wenn all dieses Unix-Esse zu beängstigend ist, würde ich wetten, dass es einfache Mac-Anwendungen gibt, die Leute geschrieben haben, um genau solche Dinge zu tun. Hoffentlich kann jemand, der sich mit einer oder mehreren dieser Anwendungsarten auskennt, ein oder zwei Antworten als Gegengewicht anbieten.

Viel Glück!

PS Ich habe vergessen, über das Nicht-Startvolume zu sprechen... Wenn Sie eine Datei von einem ANDEREN Volume als Ihrem Startvolume löschen , wird diese Datei in den .Trash-Ordner auf diesem Volume verschoben. Wenn Sie beispielsweise ein Volume mit dem Namen Foohätten, gäbe es einen .Trash-Ordner unter /Volumes/Foo/.Trash. Was ich oben dokumentiert habe, wird diese Dateien nicht löschen. Sie müssten für jedes Volume, das Sie haben, etwas Ähnliches einrichten.

OS X hat findauch ein -deleteFlag, damit Sie find ~/.Trash -mtime +7 -delete. Die Änderungsdaten sind kein sehr guter Hinweis darauf, wann Dateien gelöscht wurden. Ich kenne jedoch keine Möglichkeit, auf die im Finder angezeigten gelöschten Metadaten zuzugreifen.
Stimmen Sie dem obigen Kommentar zu ... Obwohl dies ein nettes Skript ist, löscht es in der Praxis Dinge bis zum Änderungsdatum. Wenn ich also jetzt einen Ordner mit alten Sachen entsorge und das Skript direkt danach ausführe, werden die meisten Sachen aus diesem Ordner gelöscht. Wäre gut, wenn wir einen Parameter für das Löschdatum in der Datei finden könnten.
@Jowie wir können -atime verwenden, was die letzte Zugriffszeit ist. Übrigens gibt es noch ein weiteres Problem – das hinterlässt leere Verzeichnisse im Papierkorb …

Hazel kann so konfiguriert werden, dass Dateien nur für eine bestimmte Zeit aufbewahrt werden und der Papierkorb unter einer bestimmten Größe bleibt. Sie können auch benutzerdefinierte Regeln zum sofortigen Löschen großer Dateien oder zum Löschen von Dateien in den Papierkorbordnern anderer Volumes hinzufügen.

John Wiegleys dirscan , insbesondere das cleanup.pyBeispiel, wurde entwickelt, um die Probleme zu behandeln, die mit den Ansätzen identifiziert wurden, die verwenden find. dirscanbietet eine allgemeinere Lösung, da Sie es so einrichten können, dass verschiedene Verzeichnisse auf unterschiedliche Weise gescannt/bereinigt werden.