Назад | Перейти на главную страницу

RSYNC от удаленного до локального, за исключением папок

Как я могу загрузить с удаленного сервера на локальный, за исключением папок или файлов?

Я использовал что-то подобное, но исключение не работает ...

rsync -avr -P -e ssh --exclude=/path/to/exclude/* user@ipaddress:/home/path/to/copy /home/user/www

Предложения?

Проблема здесь, скорее всего, в путях в exclude фильтры в rsync.

Пути, используемые в списке файлов rsync: родственник на путь ИСТОЧНИК.

Это если ваша структура каталогов

 /home/path/to/copy
                | files_to_copy
                     | file1
                     \ file2
                \ files_to_exclude
                     | file3
                     \ file4

Затем, если вы дадите команду

rsync -avr -e ssh user@host:/home/path/to/copy \
                 /home/user/www --exclude='files_to_exclude/*'

В копии вы получите следующую структуру

 /home/user/www
             | files_to_copy
                  | file1
                  \ file2
             \ files_to_exclude

Если вы не хотите, чтобы каталог files_to_exclude в копии вы можете использовать следующую команду:

rsync -avr -e ssh user@host:/home/path/to/copy \
                 /home/user/www --exclude='files_to_exclude'

Мы используем что-то похожее на это

filename=`date +%F`_backup
rsync --verbose --log-file=/backup_logs/"$filename" --progress --stats --compress --rsh=/usr/bin/ssh --recursive --times --perms --links --delete --exclude '*.zip' user@remoteMachine:/data/documents/ /local/data/documents/