==================================================================================== === Указать кастомные настройки сервера, к какому будет устанавливаться подключение через rsync: === ==================================================================================== # vi ~/.ssh/config Host example.com Port 11111 ==================================================================================== === Синхронизировать локальный каталог "11" с удаленным каталогом /home/user/22/ (если он не существует, то будет создан. Если существует - обновлен). Ключ "--delete" удаляет файлы в удаленном каталоге "22", если они были удалены в локальном каталоге "11": === ==================================================================================== # rsync -avzh /mnt/c/Users/user/Desktop/11/ user@example.com:/home/user/22/ --delete ==================================================================================== === Синхронизировать локальный каталог "11" с удаленным каталогом /home/ser/11/. Ключ "--exclude 'dirname'" исключает локальный каталог 'dirname' из списка файлов для синхронизации (можно укзаывать несколько). Ключ "--delete-excluded" удаляет файлы в удаленном каталоге, если они были описаны в ключе "--exclude" (в этом случае будут удалены каталоги "22", "44" и "55" из удаленного каталога): === ==================================================================================== # rsync -avzh --exclude '22' --exclude '44' --exclude '55' /mnt/c/Users/user/Desktop/11/ user@example.com:/home/user/backups/11 --delete --delete-excluded ==================================================================================== === Синхронизировать содержимое удаленного каталога "11" с локальным каталогом "22": === ==================================================================================== # rsync -avzh user@example.com:/home/user/backups/11/* /mnt/c/Users/user/Desktop/22/ --delete --delete-excluded ==================================================================================== === Синхронизировать только локальный каталог "55" с удаленным каталогом "11": === ==================================================================================== # rsync -avzh --include '55' --exclude="*" /mnt/c/Users/user/Desktop/11/ user@example.com:/home/user/backups/11 --delete --delete-excluded ==================================================================================== === Синхронизировать только содержимое каталога "55" и его подкаталогов\файлов без синхронизации пустых каталогов с уровня "55". Схема работы по текущему синтаксису следующая: в синхронизацию включаются все каталоги (необходимо для обхода дерева каталогов), потом включается требуемый каталог с содержимым (файлы лежат только на следующем уровне, без подкаталогов), исключается всё, не соответствующее более точному паттерну ('55/**'), и исключаются пустые каталоги, которые были бы синхронизированы благодаря первому паттерну: === ==================================================================================== # rsync -avzh --recursive --include '*/' --include '55/**' --exclude="*" --prune-empty-dirs /mnt/c/Users/user/Desktop/11/ user@example.com:/home/user/backups/11 --delete --delete-excluded