Почему `rsync <...> / path / to / someDir / path / to / otherDir` оставляет меня с` / path / to / otherDir / someDir`, а не синхронизирует файлы из `someDir` в` otherDir`? - PullRequest
1 голос
/ 17 марта 2012

Почему мой rsync делает это?По сути, это просто копирование папки someDir внутри otherDir.Если после выполнения изменений в /path/to/someDir я снова выполню команду, rsync синхронизирует все файлы от /path/to/someDir до /path/to/otherDir/someDir.Как мне синхронизировать все файлы внутри /path/to/someDir с /path/to/otherDir.

Вот как выглядит команда, которую я исключаю:

rsync --stats --compress --recursive --times --perms --links --delete --exclude ".git" --exclude "wp-content/upload" --exclude "wp-content/uploads" --exclude "wp-content/gallery" /path/to/someDir /path/to/otherDir

Ответы [ 2 ]

2 голосов
/ 17 марта 2012

rsync - одна из немногих команд, которые различают /your/path и /your/path/

Когда вы не используете обратную косую черту, вы ссылаетесь на каталог, а когда вы используете его, вы ссылаетесь на содержимое каталога.

Попробуйте

rsync --stats --compress --recursive --times --perms --links --delete --exclude ".git" --exclude "wp-content/upload" --exclude "wp-content/uploads" --exclude "wp-content/gallery" /path/to/someDir/ /path/to/otherDir

Этот дополнительный косой черты в /path/to/someDir/ сделает его содержимое доступным в /path/to/otherDir.

Кстати: не поддавайтесь искушению использовать /path/to/someDir/*, как было предложено, это создаст проблемы при наличии большого количества файлов и не будет копировать файлы с именами, начинающимися с ..

2 голосов
/ 17 марта 2012

/ path / to / someDir относится к папке someDir, а не к файлам внутри. Если вы хотите вместо этого скопировать файлы из / path / to / someDir, попробуйте это:

rsync... /path/to/someDir/ /path/to/otherDir
...