find ~ -type f ! -atime 4|xargs ls -lrt
Zobrazí se seznam souborů, ke kterým se přistupovalo starší než 4 dny , vyhledávání z domovského adresáře.
Můžete se dotknout svého časového razítka jako souboru a použít jej jako referenční bod:
např. pro 1. ledna 2014:
touch -t 201401010000 /tmp/2014-Jan-01-0000
find /path -type f ! -newer /tmp/2014-Jan-01-0000 | xargs rm -rf
to funguje, protože find
má -newer
přepínač, který používáme.
Od man find
:
-newer file
File was modified more recently than file. If file is a symbolic
link and the -H option or the -L option is in effect, the modification time of the
file it points to is always used.
Tato druhá odpověď znečišťuje souborový systém a find
sám nabízí možnost "smazat". Nemusíme tedy předávat výsledky do xargs a poté vydávat rm.
Tato odpověď je efektivnější:
find /path -type f -not -newermt "YYYY-MM-DD HH:MI:SS" -delete
Toto funguje pro mě:
find /path ! -newermt "YYYY-MM-DD HH:MM:SS" | xargs rm -rf