• # Rsync

    Posté par . En réponse au message Copier une arborescence de dossiers sans les fichiers avec CP. Évalué à 4.

    rsync est cité dans une réponse précédente, mais sans plus d'explication. Après la lecture de la page de manuel, voici une commande qui devrait fonctionner :

    rsync --recursive --min-size=8192P-1 <SOURCE>/ <DESTINATION>/ --verbose --progress

    À moins que tu n'aies des fichiers de plus de 8192 Péta-octets sur ton arborescence, ça devrait fonctionner. Ajoute néanmoins l'option --dry-run la première fois pour t'assurer que tout ira bien, et après vogue la galère !

    Il est même possible de bricoler une limite au niveau de récursion avec l'option --exclude=/*/*/*/etc en mettant autant de */ que nécessaire. Un seul ne copiera que le dossier source, deux copieront le dossier source avec ses dossiers, trois avec en plus les sous-dossiers de ses dossiers, etc. Mais la prudence reste de mise, cette option pouvant totalement cafouiller si les fichiers ont des noms contenants des /.

    Une deuxième possibilité, plus sûre, mais qui ne permet pas de limiter la récursion est :

    rsync --recursive --include=/**/ --exclude=/** <SOURCE>/ <DESTINATION>/ --verbose --progress

    Pour vérifier que tout est bien copié, observe la sortie de la commande ou utilise la commande :

    tree <DESTINATION>

    L'informatique n'est pas une science exacte, on n'est jamais à l'abri d'un succès