Kullanma find:
find ~/tmp -type f -mtime +0 -delete
~/tmp özyinelemeli olarak aranacak dizin, buna göre değiştirin
-type f sadece dosyaları arayacak
-mtime +0 en son bir gün veya daha önce değiştirilmişse bir dosyayla eşleşecek
-delete sadece eşleşen dosyaları kaldıracak
Burada yakalama -mtime +0, çoğu kullanmayı düşünebilir, -mtime +1ancak findgünleri hesaplarken herhangi bir kesirli zamanı göz ardı edecektir. Dolayısıyla, -mtime +1son değişiklik en az 2 gün önce yapılmışsa bir dosyayla eşleşir.
Alıntı yapmak man find, -mtimeşu zamanlama kuralına sahiptir -atime:
-atime n
Dosyaya en son 24 saat önce erişildi. Bul, dosyaya en son kaç saatlik 24 saat önce erişildiğini anladığında, kesirli kısımlar yok sayılır, bu nedenle -atime +1 ile eşleşmek için en az iki gün önce bir dosyaya erişilmiş olmalıdır.
Ayrıca, doğruluk istiyorsanız, zamanı dakika cinsinden belirtme -mminseçeneğine de bakmanız gerektiğini unutmayın find.
3 saat sonra periyodik olarak çalıştırmak için bir crongiriş ekleyebilirsiniz .
Çalıştır crontab -eve ekle:
00 */3 * * * /usr/bin/find ~/tmp -type f -mtime +0 -delete
zshDosyaları kaldırmak için kullanma :
rm ~/tmp/**/*(.-m+0)
Ekleniyor cron:
00 */3 * * * /usr/bin/zsh -c 'rm ~/tmp/**/*(.-m+0)'