用于列出日期范围中的文件类型的artifactory查询语言

时间:2017-04-10 17:56:05

标签: search artifactory specifications aql jfrog-mission-control

我正在尝试列出特定日期范围内的文件类型,因此可以从神器存储中删除这些大文件,如何做到这一点让我感到困惑,所以我想到了使用--spec开关的青蛙cli方式,我有一个表达,但它不完全正常工作,我也需要使用相同的删除,任何帮助都会非常明显。

curl -u admin: xxxxxxxxxx -i -X POST https://something.artifactory.com/artifactory/api/search/aql -d 'items.find({"type":"file","repo":"dev","created”:{“$before":“3w”},”$or":[{"name":{"$match":"*tar.gz"}, "name":{"$match":"*bz2"}, "name":{"$match":"*zip"}}]})'

1 个答案:

答案 0 :(得分:0)

所以我尝试过和你一样,但它似乎有效。您需要特别注意的几件事情将是格式化,例如,当我复制粘贴您的示例时,有不同的引号。其次,您使用的JSON查看器工具可以帮助您查找格式问题。 所以这就是我所做的并且有效:

curl -u admin:password -i -X POST“http://localhost:8081/artifactory/api/search/aql”-T aql1.json

aql1.json文件的位置如下:

items.find({
  "type": "file",
  "repo": "libs-release-local",
  "created":{"$before": "1w"
},
"$or": [
  {
    "name": {
      "$match": "*.war"
    },
    "name": {
      "$match": "*.jar"
    }
  }
]
})

正如您在上面所看到的,我已经将aql部分添加到JSON文件中,这不是必须的,但是让生活更轻松,因为我可以看到我是否有任何问题,并且还消除了我的命令因为在特殊字符前面缺少'\'(转义)。

希望这会有所帮助。