Saya perlu mencari dan menghapus file yang lebih lama dari 1 minggu di unit Pengembangan. Ada sejumlah utilitas terbatas yang tersedia pada unit ini. -mtime
find
Predikat tidak tersedia. Bagaimana saya memeriksa semua file yang lebih lama dari x hari dalam kasus ini?
9
mtime
tidak tersedia". Itu bukan utilitas yang namanya saya kenali.FEATURE_FIND_MTIME
. ApakahFEATURE_FIND_NEWER
diaktifkan? Apakahfind -newer
bekerja? Apakahtest
utilitas Anda atau dasar dukungan[
Anda ?sh
-nt
touch -d
/date +%s
dan[ file -nt other-file ]
Jawaban:
-mtime
adalah predikat standarfind
(berlawanan dengan-delete
) tetapi sepertinya Anda memiliki versi stripped downbusybox
, di manaFEATURE_FIND_MTIME
fitur tersebut telah dinonaktifkan pada waktu pembuatan.Jika Anda dapat membangun kembali busybox dengan mengaktifkannya, Anda seharusnya dapat melakukan:
Atau jika
FEATURE_FIND_DELETE
juga diaktifkan:Jika tidak, opsi lain dapat digunakan
find -newer
(dengan asumsiFEATURE_FIND_NEWER
diaktifkan) pada file yang diatur untuk memiliki waktu modifikasi satu minggu.Atau jika
-newer
tidak tersedia tetapish
's[
dukungan-nt
:sumber
find . -mtime +6 -type f -exec rm {} \;
bekerja untuk sayaDari
man find
:Bergantung pada kasus penggunaan file yang ingin Anda hapus, ini adalah satu-satunya pilihan lain untuk Anda
find
. Kenapamtime
tidak tersedia? Sistem file apa yang Anda gunakan? Apakah Anda menjelajahi opsi lain?sumber