Страницы справочника не имеют примеров для этого. Мне нелегко говорить 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.*
- *
Я нашел решение. Я взял меня два целых дня для нахождения его. Я надеюсь эта справка Вы для не проведения так большого количества времени.
первая проблема состояла в том, что подкаталог 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
, потому что я не был уверен, если те, где, собираясь браться, но они не сделали, таким образом, он делает то, что я хочу.... наконец.