Linux'ta Bir Yaşından Eski Dosyaları Silme


18

Zamanla, birçok dosya hala sistemimde ve artık onlara ihtiyacım yok, bu yüzden en az bir yaşında olan tüm dosyaları nasıl silebilirim?

Yanıtlar:


34

Bunu bu komutla yapabilirsiniz

find /path/to/files* -mtime +365 -exec rm {} \;

Bazıları açıklar

/path/to/files* dosyalara giden yoldur.

-mtimedosyanın kaç gün eski olduğunu belirtmek için kullanılır. +365 365 günden eski dosyaları bulacaktır.

-exec rm gibi bir komut vermenizi sağlar.


@Oli notu sayesinde düzenleyin -> bunu şu şekilde yapabilirsiniz:

find /path/to/files* -mtime +365 -delete

7
Her zaman anlatmalısın {}in -exec(okur böylece -exec rm "{}" \;). Bu, boşlukların düzgün bir şekilde ele alınmasını sağlar ... Ve -deletebunun yerine işlevi kullanabilirsiniz -exec.
Oli

1
@Oli Huh ??? (Eğer kabuk dönüşler düşünüldüğünde, doğru olamaz söylediklerimiz "{}"içine {}geçirmeden önce findilk etapta, daha sonra findyerine geçen bunun için alıntı. {}Durumda önerilir {ve }kendilerini bazen kabuk tarafından özel olarak tedavi edilebilir - ilgisi yok genellikle boş alan ile yoktur. Ve {}verilemeyecek zorunda değildir. Ben, her durumda düşünemiyorum, en azından zaman zaman bir Bourne tarzı kabuğu, gelen find yürütmesini {}, bir argüman olarak tek başına görünen, hiçbir şey içiyle, olur Alıntı
yapmalı

1
@EliahKagan Evet, findkendinden kaçan kulplar çıkıyor ama senaryo yazarken olmak kötü bir alışkanlık değil. Acımıyor.
Oli

2
@Oli Ama ilke olarak bile yardımcı olmuyor. Eğer findkaçan idare etmedi, "{}"yine aynı etkiye sahip olacaktır {}--just ne yerine hem çalışma, çalışacak. Bu {}ve "{}"aynı şekilde davranmak, bulmanın herhangi bir özel özelliği nedeniyle değil ve olamaz. Bazı programlar bu genişletilmiş olur ne kabuk tarafından genişletilmiş alır kafa karışıklığı olduğunu kötü bir alışkanlık. Hepimiz bu hatayı zaman zaman yapıyoruz, ama bu hala bir hata - en iyi uygulama değil. (Hala {}insanlara ayracı genişleme için bir model olmadığını görmelerine yardım etmek için teklif verebilir, ancak bu kelime bölünmesi ile ilgisizdir.)
Eliah Kagan
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.