Bonjour,
J'ai commencé un script me permettant d'archiver des fichiers ".log" vieux de X jours, explication :
- Dans une arborescence, chercher les dossier "log",
- Si dans ce dossier "log", il y a des fichiers ".log" vieux de X jours, les archiver,
- Déplacer cette archive dans une arborescence bis en recréant les dossiers de l’arborescence de base.
$folder/*.log --> je ne peux faire comme ça, ne fonctionne pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 #!/bin/bash for folder in $(find . -name log -type d ) # Pour chaque dossiers "log" trouvé. do : for file in $(find $folder *.log -mtime +30) # Pour chaque dossier log contenant des fichiers ".log" vieux de +30jours. do : tar czf archive-log.tar.gz $folder/*.log # Archiver les fichiers ".log". done if [ -e $folder/*.tar.gz ] # Si une archive existe. then mv $folder/*.tar.gz $ARCHIVE # Déplacer l'archive. fi done
Avez-vous une alternative à me proposer ?
Je vous remercie d'avance.
Partager