[rsync] garder les stats dans un fichier
Résolu
muaddibx
Messages postés
76
Date d'inscription
Statut
Membre
Dernière intervention
-
muaddibx Messages postés 76 Date d'inscription Statut Membre Dernière intervention -
muaddibx Messages postés 76 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Dans le cadre d'un script de sauvegarde, j'aurais souhaité conserver le nombre de fichiers sauvegardés par rsync.
Pour cela, je comptais me servir de l'option --stats; par contre, j'arrive pas à garder ces infos dans un fichier, ou meme mieux, ne garder que le nombre de fichiers sauvés.
Quand je fais, par exemple:
rsync -av --stats /home/toto /home/sav/ >> /home/log.txt
Le fichier log.txt recoit bien les stats, mais il recoit aussi tous les noms des fichiers sauvegardés... hors il ne me faudrait qu'une ligne du stats (la ligne "Number of files transferred").
Oui, mes sauvegardes s'effectuent toutes les heures, sur une arborescence assez volumineuse; donc si mon log contient toutes les modifs, il va vite eclater.
J'avais pensé à créer un fichier de log "temporaire" dans lequel je mettrais les stats, et ensuite, avec un ptit script, sélectionner juste les lignes qui me faut (avec des expressions régulières surement). Mais bon, je sais pas si c'est la meilleure des solutions. A moins que je modifie l'option -av, et la remplace par -rlptgD (donc que j'enleve -v, histoire que mon log ne contienne que les stats).
Voilà un peu le topo; j'espère avoir été suffisamment clair.
Merci d'avance pour votre aide.
Muad'Dib
Dans le cadre d'un script de sauvegarde, j'aurais souhaité conserver le nombre de fichiers sauvegardés par rsync.
Pour cela, je comptais me servir de l'option --stats; par contre, j'arrive pas à garder ces infos dans un fichier, ou meme mieux, ne garder que le nombre de fichiers sauvés.
Quand je fais, par exemple:
rsync -av --stats /home/toto /home/sav/ >> /home/log.txt
Le fichier log.txt recoit bien les stats, mais il recoit aussi tous les noms des fichiers sauvegardés... hors il ne me faudrait qu'une ligne du stats (la ligne "Number of files transferred").
Oui, mes sauvegardes s'effectuent toutes les heures, sur une arborescence assez volumineuse; donc si mon log contient toutes les modifs, il va vite eclater.
J'avais pensé à créer un fichier de log "temporaire" dans lequel je mettrais les stats, et ensuite, avec un ptit script, sélectionner juste les lignes qui me faut (avec des expressions régulières surement). Mais bon, je sais pas si c'est la meilleure des solutions. A moins que je modifie l'option -av, et la remplace par -rlptgD (donc que j'enleve -v, histoire que mon log ne contienne que les stats).
Voilà un peu le topo; j'espère avoir été suffisamment clair.
Merci d'avance pour votre aide.
Muad'Dib
A voir également:
- Rsync --stats
- Windir stats - Télécharger - Gestion de fichiers
- Comment voir les stats de son pc - Guide
- Rsync windows - Forum Logiciels
- Bo2 stats ✓ - Forum PS3
- Stats pour site? - Forum Réseaux sociaux
6 réponses
(rsync -az --stats /home/toto /home/sav/ || retval=$?;echo "$retval" > /home/error.log) | grep 'files transferred:' >> /home/log.txt;-))
Salut,
Oui enlèves l'option "-v" déjà, puis un truc du genre devrait suffire :
Oui enlèves l'option "-v" déjà, puis un truc du genre devrait suffire :
rsync -az --stats /home/toto /home/sav/ | grep 'files transferred:' >> /home/log.txt;-))
Ahh Jipicy, une fois de plus, je ne saurais assez te remercier =)
Je viens de tester, et ca me va au poil!
Encore merci, et bonne journée à tous.
Je viens de tester, et ca me va au poil!
Encore merci, et bonne journée à tous.
Hum, juste une dernière question... en fait, je me sert des valeurs d'exit de mon rsync, pour voir si ya eu des erreurs.
Je voulais donc savoir si le pipe n'allait pas parasiter cette valeur, ou bien si ma valeur d'exit, après cette commande, était bien toujours celle du rsync.
Je voulais donc savoir si le pipe n'allait pas parasiter cette valeur, ou bien si ma valeur d'exit, après cette commande, était bien toujours celle du rsync.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
rsync -az --stats /home/toto /home/sav/ 2>/home/error.log | grep 'files transferred:' >> /home/log.txt
if [ -e "/home/error.log" ]; then...;fi
Après quelques tests, cette commande semble bien fonctionner. Le seul truc qui me chagrine, c'est que 2> renvoie le rapport d'erreur, et non juste la valeur d'exit; oui car en cas d'erreur, j'envoie un ptit message qui indique le numéro d'erreur; avec le rapport entier, ca va faire un gros paté :p
Enfin bref, je continue un peu mes recherches à ce niveau, et pis si ca donne rien, j'adopterais ta solution.
En tout cas, merci à toi pour ton aide.
C'est toujours un plaisir =)
if [ -e "/home/error.log" ]; then...;fi
Après quelques tests, cette commande semble bien fonctionner. Le seul truc qui me chagrine, c'est que 2> renvoie le rapport d'erreur, et non juste la valeur d'exit; oui car en cas d'erreur, j'envoie un ptit message qui indique le numéro d'erreur; avec le rapport entier, ca va faire un gros paté :p
Enfin bref, je continue un peu mes recherches à ce niveau, et pis si ca donne rien, j'adopterais ta solution.
En tout cas, merci à toi pour ton aide.
C'est toujours un plaisir =)