您可以使用 AQL 查询从存档中的给定路径获取文件列表。
作为一个例子,让我们以 my-archive.zip 档案库部署在 myrepo 文件夹内的 folder1 文件夹为例
以下 AQL 查询可用于查找此存档中路径 level-1/level-2/level-3 下的所有 xml 文件:
archive.entries.find( {
"archive.item.path":{"$eq":"folder1"},
"archive.item.name":{"$eq":"my-archive.zip"},
"archive.entry.path":{"$eq":"level-1/level-2/level-3"},
"archive.entry.name":{"$match":"*.xml"}
})
您可以使用AQL REST API 方法运行此查询并获得以下结果:
{
"results" : [ {
"entry.name" : "dummy.xml",
"entry.path" : "level-1/level-2/level-3"
} ],
"range" : {
"start_pos" : 0,
"end_pos" : 1,
"total" : 1
}
}
以下是使用 curl 调用此 REST API 的示例(查询本身存储在名为 aql.json 的文件中):
curl -XPOST -uadmin:password -H"content-type: text/plain" -d@aql.json http://localhost:8081/artifactory/api/search/aql