Software is like sex... It's better when it's free.

Blog - Clean files script

Clean files script

If it can interest someone, the other day, i maked a little bash script to clean logs files on a production server (Debien here).

#!/bin/sh
# Variables
nbDays=2 # Number of days after you want to delete files
password="your_root_password" # your password root
currentDate=$(date +%s)
deltaDays=$((86400 * $nbDays))
# Delete /Your/path/pattern_files
for i in /Your/path/*form0_*
  do
    fileDate=$(date -d $(stat -c %y $i | cut -d' ' -f1) +%s)
    if [ $(expr $fileDate + $deltaDays) -gt $currentDate ]
      then
        echo -n $password | sudo -S rm $i
    fi
  done
Tags:  bashlinux.
Posted the Friday 24 april 2009 16:56:26

Comments :

LBIE, the monday 04 may 2009 21:52:58
A noter que le mot de passe root en clair n'est pas une obligation :)

Dans le cas présent, le script était utilisé par un crontab lancé par un user non root, donc obligation de sudo...

L'utilité du script réside dans le traitement fastidieux des dates de fichiers à interpréter pour convertir en timestamp and co...