IT Blok

kutilovo živobytí kromě www.msi-elektro.cz

Jak na linuxu smazat soubory starší než x dnů

Tento příkaz se vám bude hodit, když čistíte např. logovací adresář na linuxovém serveru. Standardně většina aplikací logy v noci zaarchivuje a vytvoří nový čistý soubor, do kterého loguje další den. Nebo by to tak mělo fungovat.
V logovacím adresáři pak vzniká velké množství různě velkých souborů. Ty je třeba čas od času promazat. Buď můžete nastavit nějakou archivaci, kdy se logy odlijí na nějakou zálohovací pásku a odmažou se. Nebo ručně.

Ručně můžete smazat buď vše, co se ve adresáři nachází (zpravidla při vypnuté aplikaci). Další možností je vybrat soubory, které jsou starší než několik dnů, ty smazat a novější ponechat.
Ideálně k tomuto slouží příkaz find

find /cesta/k/souborum/* -mtime +5 -exec rm {} \;

V příkazu je zásadní parametr -mtime kterému zadáme počet dnů které má vynechat a na všem ostatním spustí příkaz za parametrem -exec.

Tento příkaz by měl fungovat na většině linuxových distribucích. Problém může nastat na některých exotičtějších, ale s těmi se většina lidí nesetká.