对于NetCDF文件,我有一个稍微复杂的目录结构,我想为它创建一个THREDDS目录。
/data/buoy/A0121/realtime/A0121.met.realtime.nc
/A0121.waves.realtime.nc
etc.
/data/buoy/A0122/realtime/A0122.met.realtime.nc
/A0122.sbe37.realtime.nc
etc.
/data/buoy/B0122/realtime/B0122.met.realtime.nc
/B0122.sbe37.realtime.nc
etc.但是我发现,regExp属性在datasetScan和聚合/扫描元素中似乎都不能使用regExp处理子目录。例如,这个目录条目可以工作。
<datasetScan name="All TEST REALTIME" ID="all_test_realtime" path="/All/Realtime"
location="/data/buoy/B0122" >
<metadata inherited="true">
<serviceName>all</serviceName>
</metadata>
<filter>
<include regExp="realtime" atomic="false" collection="true" />
<include wildcard="*.nc" />
<!-- exclude directory -->
<exclude wildcard="old" atomic="false" collection="true" />
</filter>
</datasetScan>但下面的情况并非如此。没有找到数据集。
<datasetScan name="All TEST REALTIME" ID="all_test_realtime" path="/All/Realtime"
location="/data/buoy" >
<metadata inherited="true">
<serviceName>all</serviceName>
</metadata>
<filter>
<include regExp="B0122/realtime" atomic="false" collection="true" />
<include wildcard="*.nc" />
<!-- exclude directory -->
<exclude wildcard="old" atomic="false" collection="true" />
</filter>
</datasetScan>这是一个非常简化的示例,它只是为了确认regExp与ncML页面底部隐含的子目录不匹配。http://www.unidata.ucar.edu/software/thredds/current/netcdf-java/ncml/v2.2/AnnotatedSchema4.html
我的真正目标是通过以下方式使用ncML聚合
我应该使用FeatureCollections吗?这些是非常简单的时间序列浮标观测文件。
发布于 2013-10-21 19:24:50
<filter>
<include regExp="[A-Z]{1}[0-9]{4}" atomic="false" collection="true" />
<include wildcard="realtime" atomic="false" collection="true" />
<include wildcard="post-recovery" atomic="false" collection="true" />
<include wildcard="*.nc" />
<!-- exclude directory -->
<exclude wildcard="old" atomic="false" collection="true" />
</filter>发布于 2013-10-16 13:11:12
如果正在扫描<aggregation>文件,并且希望包括子目录,则可以在<scan>元素中添加subdirs="true",例如:
<?xml version="1.0" encoding="UTF-8"?>
<netcdf xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2">
<aggregation dimName="ocean_time" type="joinExisting">
<scan location="." regExp=".*vs_his_[0-9]{4}\.nc$" subdirs="true"/>
</aggregation>
</netcdf>对于datasetScan数据集,regexp筛选器将自动应用于所有子目录,因此,如果希望将这些筛选器应用于所有子目录,只需执行以下操作:
<datasetScan name="All TEST REALTIME" ID="all_test_realtime" path="/All/Realtime"
location="/data/buoy" >
<metadata inherited="true">
<serviceName>all</serviceName>
</metadata>
<filter>
<include regExp="realtime" atomic="false" collection="true" />
<include wildcard="*.nc" />
<!-- exclude directory -->
<exclude wildcard="old" atomic="false" collection="true" />
</filter>
</datasetScan>https://stackoverflow.com/questions/19385287
复制相似问题