#1 Le 06/03/2013, à 20:06
- Stuffboxinou
[Script] - Rsync (avoir liste des fichiers mis à jour)
Salut!
J'utilise un tout petit script avec rsync et SSH afin de synchroniser un dossier sur mes deux PC, je l'utilise de manière graphique (mon amie en fait).
Donc :
rsync -avP -e ssh utilisateur@serveur:/fichier utilisateur2@serveur2:/home
notify-send "Les fichiers ont été transférés".
J'aimerais avoir la liste des fichiers transférés dans ma notification, afin de savoir si cela a fonctionné.
Sauriez-vous m'aider dans mon entreprise?
Hors ligne
#2 Le 06/03/2013, à 20:22
- Hizoka
Re : [Script] - Rsync (avoir liste des fichiers mis à jour)
tu peux recuperer le retour de rsync :
retour=$(rsync -avP -e ssh utilisateur@serveur:/fichier utilisateur2@serveur2:/home)
notify-send "Les fichiers ont été transférés : ${retour}".
un truc du genre...
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#3 Le 06/03/2013, à 20:32
- Stuffboxinou
Re : [Script] - Rsync (avoir liste des fichiers mis à jour)
Merci.
J'ai une question cependant :
> Est-ce que j'ai besoin d'exécuter me ligne de commande ou retour=$(rsync...) suffit ?
EDIT : Je ne parviens pas vraiment à faire quelque chose de présentable avec cela, mais ça fonctionne pour le moment.
J'aimerais ne faire afficher que les fichiers ajoutés (j'ai essayé avec | grep odt par exemple mais cela n'a pas marché), ou l'avertissement d'une erreur si jamais il y en a une.
Dernière modification par Stuffboxinou (Le 06/03/2013, à 21:01)
Hors ligne
#4 Le 06/03/2013, à 21:04
- Hizoka
Re : [Script] - Rsync (avoir liste des fichiers mis à jour)
apres c'est a toi de traiter les informations...
ex :
grep ".odt" <<< "${retour}"
donne un ex de retour de rsync
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#5 Le 07/03/2013, à 00:47
- Stuffboxinou
Re : [Script] - Rsync (avoir liste des fichiers mis à jour)
$ ./Exporter
sending incremental file list
Dossier/
Dossier/Essai.odt
4263 100% 0.00kB/s 0:00:00 (xfer#1, to-check=706/711)
sent 25297 bytes received 62 bytes 3901.38 bytes/sec
total size is 3382616950 speedup is 133389.21
No summary specified.
Hors ligne
#6 Le 07/03/2013, à 03:39
- Hizoka
Re : [Script] - Rsync (avoir liste des fichiers mis à jour)
tu peux donner un exemple avec plusieurs fichiers ?
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#7 Le 07/03/2013, à 10:20
- Stuffboxinou
Re : [Script] - Rsync (avoir liste des fichiers mis à jour)
sending incremental file list
Dossier/
Dossier/test1.odt
0 100% 0.00kB/s 0:00:00 (xfer#1, to-check=702/711)
Dossier/test2.jpg
0 100% 0.00kB/s 0:00:00 (xfer#2, to-check=701/711)
Dossier/test3.iso
0 100% 0.00kB/s 0:00:00 (xfer#3, to-check=700/711)
Dossier/Essai/
Dossier/Essai2/
sent 21031 bytes received 107 bytes 3252.00 bytes/sec
total size is 3382612657 speedup is 160025.20
Hors ligne
#8 Le 07/03/2013, à 10:59
- Stuffboxinou
Re : [Script] - Rsync (avoir liste des fichiers mis à jour)
Après réflexion, une simple notification de réussite ou d'échec sera suffisante, avec la redirection du flux dans un fichier que je pourrais consulter au besoin.
Hors ligne
#9 Le 07/03/2013, à 15:30
- Hizoka
Re : [Script] - Rsync (avoir liste des fichiers mis à jour)
alors un truc du genre :
rsync -avP -e ssh utilisateur@serveur:/fichier utilisateur2@serveur2:/home > /home/$USER/retour_rsync
# Verifie que tout c'est bien passé
[[ ${?} == 0 ]] && notify-send "Les fichiers ont été transférés" || notify-send "Une erreur semble s'etre passée pendant le transfert"
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#10 Le 14/06/2013, à 15:47
- Moon_LS
Re : [Script] - Rsync (avoir liste des fichiers mis à jour)
Bonjour!
Pourquoi ne pas utilisé les log
avec logrotate et quelque chose de ce genre :
dans le repertoire /etc/logrotate.d/rsynclog
/home/"repertoire de log"/rsync_liste.log
{
rotate 14
daily
missingok
}
puis ajouter dans ton bash la commande suivante pour générer le log
>~/rsync/rsync_liste.log
Hors ligne