Rsync crée un répertoire du même nom dans le répertoire de destination.

61

Quand je lance cette commande

rsync -avzp --del -e "ssh -p myport" user@hostname:/var/www/tests /var/www/tests

les fichiers sont synchronisés mais au lieu de sauvegarder les fichiers /var/www/tests, Rsync crée un répertoire "tests" supplémentaire dans les "tests" existants:

/var/www/tests/tests

et met les fichiers là-bas. Comment dire à Rsync de ne pas créer de nouveau répertoire?

javi007
la source

Réponses:

56

Si vous ne voulez pas qu'un autre testsrépertoire soit créé, la commande correcte serait

rsync -avzp --del -e "ssh -p myport" user@hostname:/var/www/tests/ /var/www/tests

Notez le /à la fin de user@hostname:/var/www/tests/.

etagenklo
la source
35

Vous avez besoin d'une barre oblique finale sur la source.

Voici la commande correcte:

rsync -avzp --del -e "ssh -p myport" user@hostname:/var/www/tests/ /var/www/tests

Plus d'informations

Explication de rsync et des slash de fin:

http://defindit.com/readme_files/rsync_backup.html

Rsync a deux principaux modes de fonctionnement. Les modes dépendent de l’absence ou de la présence de la barre oblique finale dans le répertoire source.

Un autre exemple:

http://www.jveweb.net/fr/archives/2010/11/synchronizing-folders-with-rsync.html

... vous devez ajouter la barre oblique de fin; sinon, un dossier appelé Images est créé dans le dossier Images que nous spécifions comme destination.

Drew Khoury
la source