J'utilise fréquemment la commande ci-dessous ou avec des variantes pour synchroniser des ordinateurs domestiques.
/usr/bin/rsync -e "ssh -p 22" -azvv --dry-run --delete /Users/yves/Documents/ yves@192.168.1.10:/Users/yves/Documents
Comme il s'agit souvent de gros dossier, le log de sortie est très long, il y a beaucoup de lignes comme ci dessous, et je voudrais trouver le moyen, avant de procéder, d'avoir la liste des seuls fichiers qui vont être modifiés, et donc de filtrer les lignes de sortie qui ne contiennent pas "is uptodate".
Travaux litte?\#201raires ou graphiques/Revue Alpinist/Alpinist Issue 50 Summer 2015.pdf is uptodate
Travaux litte?\#201raires ou graphiques/Revue Alpinist/Alpinist Issue 50-comprime?\#201.pdf is uptodate
Travaux litte?\#201raires ou graphiques/Revue Alpinist/Alpinist Issue 51 Autumn 2015.pdf is uptodate
Mon fils m'a suggéré d'utilser grep de la manière ci-dessous, mais cela ne marche pas, et pourtant la commande marche pour traiter un fichier de test.
/usr/bin/rsync -e "ssh -p 22" -azvv --dry-run --delete /Users/yves/Documents/ yves@192.168.1.10:/Users/yves/Documents | grep -v 'is uptodate$'
Quel est le problème et comment le résoudre ? Idéalement je souhaite créer un fichier texte ne contenant que les éléments modifiés.
Merci
_______________________________________________
archives :
http://listes.patpro.net/list/sshfr.fr.html
http://listes.patpro.net/mailman/listinfo/script_shell_fr