Pratar vi shellskript?
Denna snutt hittar alla filer (-type f) nedåt i katalogstrukturen (från snuttens startkatalog ".") som är äldre än 60 minuter (-mmin +60).
Flaggan "-exec" kör kommandot som står efter och "{} \;" innebär att det körs på objektet (filen) som find-kommandot hittar, i det här exemplet listar den filerna med full information.
find . -type f -mmin +60 -exec ls -la {} \;
Om man vill göra det till ett skript kan det se ut så här:
#!/bin/bash
MYDIR=<full sökväg till katalogen>
find $MYDIR -type f -mmin +60 -exec ls -la {} \;
# Om du vill radera filen, kör med detta istället:
# find $MYDIR -type f -mmin +60 -exec rm {} \;
Kan köras via cron, eller möjligtvis så här, så att det vilar i fem minuter mellan varje sökning:
#!/bin/bash
MYDIR=<full sökväg till katalogen>
while true; do
find $MYDIR -type f -mmin +60 -exec ls -la {} \;
# Om du vill radera filen, kör med detta istället:
# find $MYDIR -type f -mmin +60 -exec rm {} \;
sleep 300;
done
Avbryt skriptet med ctrl-c.
Lägg inte skriptet i samma katalog som filerna du söker efter, eftersom skriptet då kommer att radera sig själv när det blir äldre än en timme.
När du testar rm-kommandot i skriptet kan det vara smart att lägga på flaggan "-i" så att du får konfirmera varje borttagning, ifall det skulle blir nåt konstigt.