Я хочу к rsync от папки, какой contanins index.php (который должен быть исключен), и много других каталогов содержит index.php также. я создал исключить файл и добавил index.php там. но все index.php файлы закончились. Там какой-либо правильный метод состоит в том, чтобы избежать единственного файла от синхронизации?
rsync использует каталоги относительно корневой папки rsync. Вы должны быть в состоянии достичь этого, используя что-то вроде
rsync -aAX ./ ../target --exclude=/index.php
«/
» будет указывать на корневой каталог.
--exclude
отфильтруйте работы как это:
Если шаблон не запускается с наклонной черты, то он соответствует в конце пути, где угодно в дереве.
--exclude myfile.txt
соответствия любой названный файл myfile.txt
в любом каталоге.
--exclude logs/myfile.txt
соответствия myfile.txt
в любом названном каталоге logs
.
Если шаблон начинается с наклонной черты, он привязывается на корне переданных файлов.
Для определения, каков корень переданных файлов удалите все после последней наклонной черты в исходном пути.
Например, в следующей команде rsync, исходный путь /srv/files/something
и таким образом, корень передачи /srv/files/
.
rsync -a /srv/files/something host:/backup/files/
Так, для исключения исходного файла /srv/files/logs/myfile.txt
Вы использовали бы --exclude /logs/myfile.txt
, где та наклонная черта в начале исключить шаблона относится к корню передачи, которая базирована в /srv/files/
(на источнике).