rsync - включают - от не работы

Страницы справочника не имеют примеров для этого. Мне нелегко говорить rsync только включать некоторый файл где те файлы. Я не понимаю, почему необходимо исключить для включения, почему rsync просто не включают то, что когда-либо находится во включать файле и что он, все остальное будет исключено.

Это - мой сценарий:

rsync -ruv --rsh=ssh --include-from=zz-rsync-test.prod.incl /usr2/subdir remoteSrv:/tmp/.

и это - мой включать файл, который не работает: Это копирует слишком много: это копирует каждую вещь в/usr2/subdir (включая subdir каталог, странный), который я не хочу. Я хочу скопировать только тех, которые на, 42f, и XML-файлы в data/text_forms каталог.

+ data/text_forms/*.per
+ data/text_forms/*.42f
+ data/text_forms/*.xml
+ data/text_forms/*.xml.*

и следующее не работает, оно ничего не копирует:

- *
+ data/text_forms/*.per
+ data/text_forms/*.42f
+ data/text_forms/*.xml
+ data/text_forms/*.xml.*

и следующее не работает также, оно ничего не копирует:

- *
+ data/
+ data/text_forms/*.per
+ data/text_forms/*.42f
+ data/text_forms/*.xml
+ data/text_forms/*.xml.*

и следующее не работает также, оно ничего не копирует:

- *
+ data/
+ data/text_forms/
+ data/text_forms/*.per
+ data/text_forms/*.42f
+ data/text_forms/*.xml
+ data/text_forms/*.xml.*

Следующее не работает также:

+ */
+ /data/text_forms/*.per
+ /data/text_forms/*.42f
+ /data/text_forms/*.xml
+ /data/text_forms/*.xml.*
- *

Ни один следующие работы:

+ /data/
+ /data/text_forms/
+ /data/text_forms/*.per
+ /data/text_forms/*.42f
+ /data/text_forms/*.xml
+ /data/text_forms/*.xml.*
- *
3
задан 9 December 2014 в 13:25

1 ответ

Я нашел решение. Я взял меня два целых дня для нахождения его. Я надеюсь эта справка Вы для не проведения так большого количества времени.

первая проблема состояла в том, что подкаталог subdir в /usr2/subdir был включен, и я не сделал требуемый, что целый каталог, который будет включен, я просто хотел, чтобы он был базовым каталогом, таким образом, он требует наклонной черты в конце как в /usr2/subdir/, таким образом, моя новая команда похожа:

rsync -ruvv --rsh=ssh --include-from=zz-rsync-test.prod.incl /usr2/subdir/ remoteSrv:/tmp/.

Примечание, что я добавил дополнительное v опция в командной строке (-ruvv) для получения большего количества детали того, что было исключено или включено во время выполнения команды. С зафиксированным базовым каталогом и дополнительное v это было немного легче к созданному, право включает файл:

+ data/
+ data/text_forms/
+ data/text_forms/*.per
+ data/text_forms/*.42f
+ data/text_forms/*.xml
+ data/text_forms/*.xml.*
- *

Весь эти + строки должны быть помещены, перед эти - *, особенно для каталогов, поскольку я должен был явно включать каждый каталог, чтобы просканировать, даже если я не хочу получать файлы непосредственно в тех каталогах. Я сделал тест, добавляющий data/anyTestFile1 и data/text_forms/anyTestFile2, потому что я не был уверен, если те, где, собираясь браться, но они не сделали, таким образом, он делает то, что я хочу.... наконец.

13
ответ дан 17 November 2019 в 09:11

Другие вопросы по тегам:

Похожие вопросы: