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

rsync с фильтром

Я хочу скопировать файлы исходного кода с удаленной файловой системы на локальный сервер. Расширения файлов исходного кода: *.? Pp, *. [CHh].

Как я могу запустить rsync для копирования иерархии удаленной файловой системы и файлов исходного кода, исключая все остальное (двоичные файлы, библиотеки, объекты, файлы репозитория ...)?

PS: До сих пор я использовал эту ужасную строку, должно быть более простое решение:

$ rsync --include "*/" --include="*/*" --include="*/*/*" --include="*/*/*/*" --include="*.[CHh]" --include="*.?pp" --exclude="*" -axW user@remote/my/remote/dir ./

Вы можете использовать двойную звезду, чтобы упростить включение:

rsync -axW --exclude="*" --include="**/.[CHh]" --include "**/*.?pp" ...