2014-12-01 2 views
0

Мне нужно реализовать селективное Rsync к данной папке, strucutred так:RSync Включить Исключить Правила

random.pdf 
backup.gz 
htdocs 
    - api.html 
    - report.xml 
    - otherfile.html 
folder 
    - private.html 

Мне нужно создать правило, чтобы исключить все файлы PDF, все XMLs, и каждая папка вместо htdocs. Хотелось бы включить и все .gz. Так я придумал следующее правило:

rsync -azP --delete --exclude="*.pdf" --exclude="*.xml" --include="*.gz" --include="htdocs/*" --exclude="*" (...) 

Как-то это особые правила только получить мне доступ к * .gz и я искренне не могу понять, почему папка HTDOCS не будет проходить так же. Может ли кто-нибудь дать мне подсказку? Спасибо

+2

см., Если это поможет - http://stackoverflow.com/a/19296415/373151 –

+0

вы также можете просмотреть флаги -exclude-from и -include-from [--exclude -from = FILE read exclude patterns из FILE --include-from = FILE read include patterns from FILE] – Jonathan

+0

, если я использую -exclude = "*" в конце, я не могу передать папку htdocs: s –

ответ

0

После использования опции -dry-run (очень очень полезно) выяснилось, что мое выражение не так уж и хорошо. Это было неправильно

--include="htdocs/*" --exclude="*" 

И это было установлено следующим кодом

--include="htdocs" --exclude="/*" 

Я до сих пор не очень хорошо понимаю, решение, но оно работает отлично. Спасибо за советы

Смежные вопросы