按目录和文件模式过滤 thredds datasetScan?
Filtering thredds datasetScan by both directory and file pattern?
在 THREDDS 服务器设置中,我需要在 catalog.xml 中配置 datasetScan 过滤器元素,以便它考虑完整的文件路径,而不仅仅是文件名或目录名。说,我有以下文件夹结构:
/GGG/alpha/a
/b
/c
/GGG/beta/a
/b
/c
我只想从文件夹 alpha
中删除名为 a
的文件。我可以通过设置
从两个文件夹中删除文件 a
<exclude wildcard="a"/>
或者我可以通过设置
完全删除文件夹alpha
<exclude wildcard="alpha" atomic="false" collection="true"/>
但设置 wildcard="alpha/a"
或类似的设置似乎不起作用。我也尝试过用正则表达式代替通配符和 atomic
和 collection
的不同组合,但没有成功。我的理解是否正确,目前无法在一条规则中按文件夹和文件名进行过滤?
<exclude>
和 <include>
元素只允许匹配名称,不能匹配完整路径。
P.S.: 顺便说一句,我刚刚在 Thredds 的 GitHub 存储库中发出了拉取请求以包含此功能。
https://github.com/Unidata/thredds/pull/1015
可能应该审查一些测试和改进。
在 THREDDS 服务器设置中,我需要在 catalog.xml 中配置 datasetScan 过滤器元素,以便它考虑完整的文件路径,而不仅仅是文件名或目录名。说,我有以下文件夹结构:
/GGG/alpha/a
/b
/c
/GGG/beta/a
/b
/c
我只想从文件夹 alpha
中删除名为 a
的文件。我可以通过设置
a
<exclude wildcard="a"/>
或者我可以通过设置
完全删除文件夹alpha
<exclude wildcard="alpha" atomic="false" collection="true"/>
但设置 wildcard="alpha/a"
或类似的设置似乎不起作用。我也尝试过用正则表达式代替通配符和 atomic
和 collection
的不同组合,但没有成功。我的理解是否正确,目前无法在一条规则中按文件夹和文件名进行过滤?
<exclude>
和 <include>
元素只允许匹配名称,不能匹配完整路径。
P.S.: 顺便说一句,我刚刚在 Thredds 的 GitHub 存储库中发出了拉取请求以包含此功能。
https://github.com/Unidata/thredds/pull/1015
可能应该审查一些测试和改进。