Apakah ada cara untuk membatasi ukuran Sampah?

12

Saya kehabisan ruang disk dan saya punya 15GB di tempat sampah. Apakah ada cara untuk tidak menyimpan barang yang lebih lama dari mengatakan 7 hari atau membatasi ukuran Sampah?

Saya perlu cara untuk menjaga ini dikelola secara otomatis.

Jon Erickson
sumber

Jawaban:

12

Trash hanyalah folder khusus (direktori) yang dibuat dan dikelola Apple melalui Finder sehingga Anda memiliki kemampuan untuk dengan mudah "membatalkan penghapusan" item (dengan menghapusnya dari Trash) sebelum Anda menghapus sepenuhnya (Empty Trash). Karena mekanisme ini hanyalah sebuah direktori pada disk startup Anda, secara teknis Anda memiliki seluruh ruang disk startup untuk digunakan untuk Trash jika Anda mau.

Jika Anda menginginkan ukuran file penghapus "ajaib-otomatis" yang lebih dari 7 hari, Anda dapat menggunakan skrip bash sederhana:

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

Menggunakan editor teks favorit Anda, rekatkan baris di atas ke dalam file baru dan kemudian simpan file tersebut sebagai empty_trash_older_than_7_days.sh. Di terminal, pastikan untuk menggunakan chmodperintah untuk membuatnya dapat dieksekusi seperti itu:chmod +x /path/to/empty_trash_older_than_7_days.sh

Perintah ini, ketika dieksekusi di terminal, akan menemukan semua file di Trash Anda (file dari volume Startup Anda saja - lebih dari ini dalam satu menit) yang lebih lama dari 7 hari (dari saat Anda menjalankan perintah ini) dan meneruskan setiap file sesuai rm -rfperintah. Karena rmini adalah perintah unix dan tidak memiliki gagasan tentang Trash, ia hanya menghapus unix yang untuk tujuan kami adalah penghapusan nyata (seperti Mengosongkan Sampah).

Anda kemudian dapat menggunakan cron (jika Anda tidak terbiasa dengan Cron, periksa entri Cron baik di wikipedia ) untuk mengatur eksekusi berulang skrip ini.

Secara pribadi, pilihan saya adalah hanya melatih diri Anda untuk menggunakan Empty Trashitem menu setiap beberapa menit, hari, minggu?

NB jika semua unix-ese ini terlalu menakutkan, saya bertaruh ada Aplikasi Mac sederhana yang ditulis orang untuk melakukan hal semacam ini. Semoga seseorang dengan sedikit pengetahuan tentang satu jenis aplikasi ini dapat menawarkan satu atau dua jawaban sebagai penyeimbang.

Semoga berhasil!

PS Saya lupa berbicara tentang volume non-startup ... Jika Anda menghapus file dari volume LAINNYA dari volume startup Anda, file ini akan pergi ke folder .Trash pada volume itu. Misalnya, jika Anda memiliki volume bernama Foo, akan ada folder .Trash di /Volumes/Foo/.Trash. Apa yang saya dokumentasikan di atas tidak akan menghapus file-file itu. Anda harus menyiapkan sesuatu yang serupa untuk setiap volume yang Anda miliki.

Sorens
sumber
2
OS X findjuga memiliki -deleteflag sehingga Anda bisa menggunakannya find ~/.Trash -mtime +7 -delete. Tanggal modifikasi bukanlah indikasi yang sangat baik tentang kapan file dihapus. Saya tidak tahu cara mengakses tanggal dihapus metadata yang ditampilkan di Finder.
Lri
Setuju dengan komentar di atas ... Meskipun ini skrip yang bagus, dalam praktiknya menghapus hal berdasarkan tanggal modifikasi. Oleh karena itu, jika saya membuang folder barang lama sekarang dan kemudian menjalankan skrip langsung, sebagian besar barang dari folder itu dihapus. Akan lebih baik jika kita dapat menemukan parameter untuk tanggal yang dihapus pada file.
Jowie
@ Jowie kita bisa menggunakan -atime yang merupakan waktu akses terakhir. Ngomong-ngomong ada masalah lain - ini meninggalkan direktori kosong di Sampah ...
Nama Tampilan
3

Hazel dapat dikonfigurasi untuk menyimpan file hanya untuk jangka waktu tertentu dan untuk menjaga sampah di bawah ukuran tertentu. Anda juga bisa menambahkan aturan khusus untuk menghapus file besar dengan segera atau menghapus file di folder sampah volume lainnya.

Lri
sumber
0

John Wiegley ini dirscan , khususnya cleanup.pymisalnya, dirancang untuk menangani masalah-masalah yang diidentifikasi dengan pendekatan menggunakan find. dirscanmemberikan solusi tujuan yang lebih umum sehingga Anda dapat mengaturnya untuk memindai / membersihkan direktori yang berbeda dengan cara yang berbeda.

jwd630
sumber