Re: rsync исключить .*, но включить один из них
Dmitry Podkovyrkin -> debian-russian@lists.debian.org @ Fri, 18 Jul 2014 13:18:48 +0600:
DP>> Строка rsync:
DP>> rsync -e "ssh -p *" -auvh --progress --delete
DP>> --include="*/.local/share/gnote*" --exclude=".*" /home/d/
DP>> my.host.name:/home/d/backup
DP>> Эту часть (--include="*/.local/share/gnote*") менял по разному. Не получается.
>> Насколько я вижу путь к тому, что бэкапится -
>>
>> --include=".local/share/gnote*"
DP> Бекапится /home/d/ исключая ".*"
DP> А мне надо чтоб кроме всего этого в список было включено "/home/d/.local/share/gnote/"
DP> Но оно упорно не хочет видеть этот каталог (gnote). Могу конечно создать символическую ссылку без "." вначале, но это не тот метод.
DP> Мне кажется --include должно иметь приоритет перед --exclude. Или нет?
Когда речь заходит о "мне кажется", то стоит остановиться и взять man.
Нет, не должно. А вот что там конкретно, это уже надо _вдумчиво_ читать
ман. Там важен порядок, но он, вроде правильный (во всяком случае, у
меня в скрипте бэкапа, написанном по результатам оного вдумчивого
чтения, включение /var/log/**/ стоит до выключения /var/log/**), а вот
боюсь, что включать надо явно еще и .local и .local/share (причем
последнюю как бы не как /.local/share или /home/d/.local/share, первое
вероятнее), и выключать лишнее их содержимое (/.local/* и
/.local/share/*).
Символическую ссылку без . в начале создавать бесполезно. Ссылку он
скопирует, а содержимое директории - нет.
И заметка в сторону. Вообще-то для резервного копирования "конечно, я
исключил все файлы с . в начале" - не очень хороший подход. Там все
настройки, однако. Я при резервном копировании отключаю только кэши, а
настройки как раз пусть копирует.
Reply to: