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

Blog - Script de nettoyage de fichiers

Script de nettoyage de fichiers

Si ca peut intéresser des gens, l'autre jour j'ai dû faire un petit script bash pour nettoyer des fichiers de logs sur un serveur de production (Debian en l'occurrence).

#!/bin/sh
# Variables
nbDays=2 # Le nombre de jour au dela duquel vous voulez supprimer les fichiers
password="your_root_password" # Votre 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

Avis aux amateurs :)

Tags:  bashlinux.
Posté le Vendredi 24 avril 2009 16:56:26

Commentaires :

LBIE, le lundi 04 mai 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...