Salut,
Suite à un espace disque saturé sur une machine d’intégration. Je souhaite faire un archivage automatique mensuel (lancement du script via crontab).
Je suis donc parti sur une script de compression .tar.bz2 pour un meilleur gain de place.
Le hic, je voudrais qu'il m'archive tout les fichiers >30J en excluant certain dossier/fichier (extension particulière).
Et nettoyer ce qui est archivé, le script étant exécuter une fois mensuellement.
J'ai commenté là où je calle pour la fonction des >30J
Tous les fichiers ont le même entête, incrémenter soit du numéro de jour de l'année en extension, soit de la date.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #!/bin/bash #Archivage.sh EXT= # type de fichier NOM= #nom de fichier for i in /home/dossier/aaa; do tar -cjf /home/dossier/aaa/$NOM.tar.bz2 --exclude '/home/dossier/aaa/bbb' /home/archive <= #fonction de date pour archiver les fichiers >30J rm #nettoyage des fichiers archivers > 30J done
Ce qui donne TESTINT.054 TESTINT.055 ou TESTINT.20130227....Je suis parti à archiver puis nettoyer, je sais que je pourrai faire aussi un move suivi de ma compression, mais dans tout les cas j'aurai un RM pour nettoyer les fichiers ajoutés à l'archive.
Partager