发布于 

Syncthing的ignore忽略规则配置说明

群晖 #Syncthing


* https://blog.csdn.net/XiaoXiao_RenHe/article/details/114283983

Syncthing服务器间文件同步时,若根目录下子目录或文件不想同步时,可以配置忽略规则。

如下截图,表示根目录/Apache下所有名称为temp、glowroot的文件夹不进行同步。

说明:

0、匹配规则仅仅是如何匹配,若要匹配文件夹/目录/子目录时,忽略模式中最后不能写/,写了/的表示匹配目录下的子目录/文件。

  **请注意,以斜杠结尾的目录模式some/directory/与目录内容匹配,但与目录本身不匹配。如果希望模式与目录及其内容匹配,请确保模式末尾没有/。**

1、配置忽略模式时, 忽略规则都是基于文件根目录的 ,根目录如下图所示:

2、以 // 开始的行,表示该行是 注释 ,不是忽略规则。

3、 文件夹/目录名称 (如temp)匹配——忽略根目录下所有该文件夹/目录/子目录,即服务器间同步时,配置的该文件夹/目录(temp)不进行同步。

4、***** 匹配符——匹配 任意个字符,但不包含目录分隔符 \ ,如te*p,可以匹配temp、teatop、tep等,但不匹配templete\pool。

5、** 匹配符——匹配任意个字符,且包含目录分隔符 \ 。

6、 匹配符—— 一个?匹配一个字符,且不包含目录分隔符 \

7、 [ ] 匹配符—— 一个[ ]匹配一个区间内的字符, 如[a-c],即这个字符可以是a或b或c。

8、 {} 匹配符——匹配{}中以逗号分隔的一个内容,如{banana,pineapple},即可以匹配到banana或pineapple。

9、 \ 转义符 ——特殊符号(如:、/ 、\、、?、[、]、{、}),匹配规则需要特殊匹配时,可以使用到转义符,如\{banana\}可以匹配到{banana} ,当前windows系统不支持。

10、 /Apache ——只在根目录下匹配,即Apache若为子目录,则匹配不到。

11、 #include more-patterns.txt ——可以引用外部的规则文件,但是模式本身仍然是相对于文件夹根目录的,且文件不存在或重复引用会报错。

12、 匹配符——即大规则下某些文件夹/目录/文件需要同步,!时需要强制扫描整个目录树,但!/Apache不会强制扫描整个目录树。

13、 (?i) 匹配符——即后面的内容不区分大小写来进行匹配。

14、 (?d) 匹配符——即删除文件夹/目录时,若文件夹/目录下有被组织删除的文件,可以使用该前缀,表示可被允许删除的文件。

注意:(?d)(?i)可以部分前后进行匹配。