Non so se avete mai provato a cancellare da una cartella linux i files più vecchi di una certa data, sembra facile con uno script del genere
[shell]
find <path_to_folder>/*.jpg -mtime +5 -type f | xargs rm -f
[/shell]
ma se la cartella ha decine di migliaia di files compare l’errore “too many arguments” e non se ne esce
ho dovuto quindi andarci giù pesante scrivere uno script che prenda i files più vecchi da una cartella, verifichi se sono più vecchi di un file di riferimento e li cancelli, ma si fermi dopo un certo numero di files per non intasare il server…
[shell]
fcount=0;
cd <path_to_folder>
touch -d "5 days ago" timestampfile.tmp
for f in `ls -t -r`
do
let "fcount += 1";
#cancello solo se più vecchio di 5 giorni
if [ $f -ot "timestampfile.tmp" ]
then
rm "$f";
fi
#cancello al max 100 files
if [ $fcount -gt 100 ]
then
break
fi
done
[/shell]