Çöp Kutusunun boyutunu sınırlamanın bir yolu var mı?


12

Sadece disk alanım bitti ve çöp kutumda 15 GB gibi bir alan var. Öğeleri 7 günden daha eski tutmamanın veya Çöp Kutusunun boyutunu sınırlamamanın bir yolu var mı?

Bunu otomatik olarak yönetmenin bir yoluna ihtiyacım var.

Yanıtlar:


12

Çöp Kutusu, Apple'ın Finder aracılığıyla oluşturduğu ve yönettiği özel bir klasördür (böylece), tam olarak silmeden (Çöp Kutusunu Boşalt) önce öğeleri kolayca "geri alma" (Çöp Kutusu'ndan kaldırarak) yeteneğine sahip olursunuz. Bu mekanizma yalnızca başlangıç ​​diskinizdeki bir dizin olduğundan, teknik olarak başlangıç ​​diskinizin tüm alanını, isterseniz Çöp Kutusu için kullanabilirsiniz.

7 günden eski bir miktar "otomatik büyülü" kaldırma dosyası istiyorsanız, basit bir bash betiği kullanabilirsiniz:

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

En sevdiğiniz metin düzenleyicisini kullanarak yukarıdaki satırı yeni bir dosyaya yapıştırın ve dosyayı farklı kaydedin empty_trash_older_than_7_days.sh. Terminalde, chmodkomutu çalıştırılabilir yapmak için kullandığınızdan emin olun :chmod +x /path/to/empty_trash_older_than_7_days.sh

Bu komut, terminalde yürütüldüğünde, Çöp Kutunuzdaki 7 günden eski (bu komutu çalıştırdığınız andan itibaren) tüm dosyaları (yalnızca Başlangıç ​​biriminizdeki dosyalar - bir dakika içinde daha fazla) bulur ve geçer her dosyayı rm -rfkomuta. Yana rmbir unix komut ve Çöpün bağı yoktur, bu sadece bir Unix bizim için (Çöp Kutusu Boşaltılıyor gibi) gerçek silme olduğu silinir mi.

Daha sonra bu betiğin yinelenen yürütülmesini ayarlamak için cron'u kullanabilirsiniz (Cron'a aşina değilseniz, wikipedia'daki ince Cron girişine bakın ).

Şahsen, benim oyum sadece Empty Trashbirkaç dakika, gün, haftada menü öğesini kullanmak için kendinizi eğitmek için ?

PS, tüm bu unix-ese çok korkutucu ise, insanların sadece bu tür bir şey yapmak için yazdığı basit Mac Uygulamaları olduğunu iddia ediyorum. Umarım bu tür uygulamalardan bir veya daha fazlası hakkında bilgi sahibi olan bir kişi, karşı denge olarak bir veya iki cevap verebilir.

İyi şanslar!

PS Sana bir birimden bir dosyayı silerseniz ... olmayan başlangıç hacmi hakkında konuşmak unuttum DİĞER başlangıç hacminden daha, bu dosya o birimdeki .Trash klasörüne gidecek. Örneğin, adlı bir biriminiz Foovarsa, adresinde bir .Trash klasörü bulunur /Volumes/Foo/.Trash. Ne yukarıda belgelenen olacak değil bu dosyaları silin. Sahip olduğunuz her cilt için benzer bir şey ayarlamanız gerekir.


2
OS X'lerde findde -deletekullanabileceğiniz bir bayrak var find ~/.Trash -mtime +7 -delete. Değişiklik tarihleri, dosyaların ne zaman silindiğinin çok iyi bir göstergesi değildir. Ancak Finder'da gösterilen silinen meta verilere erişmenin herhangi bir yolunu bilmiyorum.
Lri

Yukarıdaki yorumu kabul edin ... Bu güzel bir senaryo olmasına rağmen, pratikte bir şeyleri değiştirildiği tarihe kadar siler. Bu nedenle, şimdi eski şeyler klasörünü çöpe atıp komut dosyasını hemen çalıştırırsam, bu klasördeki öğelerin çoğu silinir. Dosyada silinen tarih için bir parametre bulabilirsek iyi olur.
Jowie

@ -Jowie son erişim zamanı olan -atime kullanabilirsiniz. Bu arada başka bir sorun daha var - bu Çöp Kutusu'nda boş dizinler bırakıyor ...
Görünen Ad

3

Hazel , dosyaları yalnızca belirli bir süre tutacak ve çöp kutusunu belirli bir boyutun altında tutacak şekilde yapılandırılabilir. Ayrıca büyük dosyaları hemen silmek veya diğer birimlerin çöp klasörlerindeki dosyaları silmek için özel kurallar ekleyebilirsiniz.


0

John Wiegley'nin dirscan , özellikle cleanup.pyörnek, kullanılan yaklaşımlar ile tanımlanan sorunları ele almak için tasarlanmıştır find. dirscanfarklı dizinleri farklı şekillerde taramak / temizlemek için ayarlayabilmeniz için daha genel amaçlı bir çözüm sunar.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.