Saya mencoba menghapus semua file dan folder di /tmp
dir yang lebih tua dari satu hari.
Saya tahu untuk menghapus semua file dan folder yang harus saya lakukan
rm -rf *
Tapi saya tidak yakin bagaimana lagi saya menemukan semua file dan folder yang lebih lama dari satu hari untuk menghapusnya dan memasukkan cron.
Jawaban yang Diterima:
Pertama, gunakan find
untuk memilih file ini:
find /tmp -mmin +1440
akan menemukan file yang dimodifikasi lebih dari 1440 menit yang lalu. (Ada opsi untuk menggunakan hari, bukan menit, tetapi dibulatkan ke atas dan +1 berarti 2 hari atau lebih, sayangnya. Lihat pemberitahuan di bawah).
Coba ini, dan jika Anda puas bahwa ini menemukan file yang tepat, hapus sekaligus:
find /tmp -mmin +1440 -delete
Lihat man find
untuk kemungkinan lain (waktu terakhir diubah status, waktu akses).
Pemberitahuan tentang penggunaan -mtime +1
:
Dalam man, temukan
Tertulis:
-mtime n
Data file terakhir diubah n*24 jam yang lalu.
Tetapi juga tertulis:
Lihat komentar untuk
-atime
untuk memahami bagaimana pembulatan memengaruhi
interpretasi waktu modifikasi file.Komentar untuk
-atime
katakan:Saat mencari tahu berapa periode 24 jam yang lalu file terakhir
diakses, bagian pecahan mana pun diabaikan, jadi untuk mencocokkan -atime +1 , file
harus telah diakses setidaknya dua hari yang lalu.
Dengan kata lain, -mtime
hanya dapat menghitung dalam satuan 24 jam atau satu hari masing-masing sejauh -mtime +1
pergi, ini berarti tepat lebih dari satu hari dengan setidaknya satu hari ( yaitu dua hari+ )
-mmin
di sisi lain dapat menghitung dalam hitungan menit. Jadi, jika akurasi yang ketat sangat penting, maka -mmin +1440
( 1440 menit =1 hari ) dapat digunakan sebagai pengganti -mtime +1