7
votes

Demandez à RSYNC uniquement des fichiers de rapport qui ont été mis à jour

Lorsque RSYNC imprime les détails de ce qu'il a fait pour chaque fichier (en utilisant l'un des drapeaux verbeux), il semble inclure les deux fichiers mis à jour et des fichiers qui n'ont pas été mis à jour. Par exemple, un extrait de ma sortie à l'aide du drapeau -v ressemble à ceci: xxx

Je ne suis intéressé que par les fichiers mis à jour. Dans ce cas, c'est désolé.html . Il imprime également les noms de répertoires car il les entre dans la mesure même s'il n'y a pas de fichier dans ce répertoire mis à jour. Existe-t-il un moyen de filtrer des fichiers et des répertoires optimisés sans fichiers mis à jour de cette sortie?


0 commentaires

3 Réponses :


5
votes

Vous pouvez le conduire à Grep: xxx


4 commentaires

Sur les fichiers à long terme, vous ne recevrez pas de progrès car Grep n'est pas interactif.


Ne fonctionne pas pour la version> = 3.0.7 (voir serverfault.com/questions/401210/... )


Je veux corriger, ou au moins clarifier, que @jeff a affiché ci-dessus et que @karlrichter a souligné. Je pense que le problème n'est pas que rsync -v n'enveille plus la chaîne "UPTODATE", mais plutôt que vous devez utiliser rsync -vv . Notez les deux V s. Je viens de vérifier ces travaux sur Ubuntu 14.04 avec rsync version 3.1.0. @jeff pouvez-vous mettre à jour votre message pour refléter ceci?


Celui-ci a bien fonctionné pour moi avec rsync version 2.6.9 sur MacOS Catalina. Une bizarrerie que j'ai notée était que quelques-uns UPTODATED FILEDENT au-delà de l'écran GREP -V 'UPTODATE' . FWIW, une chose que ces fuite de fichiers étaient en commun étaient qu'ils avaient des caractères «spéciaux» dans le nom du fichier. Cela pourrait probablement être réparé ...



4
votes

La sortie de RSYNC peut être largement personnalisée, jetez un coup d'œil à rsync --info = Aide ; -V est une façon assez grossière pour obtenir des informations d'un RSYNC moderne.

Dans votre cas, je ne sais pas exactement ce que vous considérez "mis à jour" pour signifier. Par exemple, supprimé sur le récepteur aussi? Seuls des fichiers / DIRS, mais aussi des tuyaux et des symboles aussi? Temps mod / accès ou contenu uniquement?

comme un test simple, je vous suggère de regarder: rsync --info = nom1 .


1 commentaires

@Michael Que diriez-vous: rsync -avh --info = nom1, del, progres1 --Delete - Ignore-erreurs / source / cible



2
votes

Voici ma prise ... (travail éprouvé et très heureux.)

A . means that the item is not being updated  (though  it
    might have attributes that are being modified).


0 commentaires