通过 BASH 获取 Artifactory 存储的文件校验和

cod*_*ode 3 artifactory

我有一个文件存储在 Artifactory 中。我需要在不下载的情况下获取其校验和。

需要使用BASH。

url="http://$abc/$def/$qwe/file.a?properties"
curl -u "$user":AP"$pass" "$url"
Run Code Online (Sandbox Code Playgroud)

不起作用。我收到错误消息,没有属性。文件存在,有校验和,并且路径正确。

将 MD5 校验和放入 var 并检查命令是否成功会很好。

gal*_*ben 5

一种选择是使用: https://www.jfrog.com/confluence/display/RTF/Artifactory+REST+API#ArtifactoryRESTAPI-ItemProperties

例子:

curl http://artifactory.host/api/storage/libs-release-local/org/acme
Run Code Online (Sandbox Code Playgroud)

您可以将其通过管道传递给 jq(这是一个命令行 JSON 解析器)并仅获取您需要的校验和。

curl http://artifactory.host/api/storage/libs-release-local/org/acme | | jq .checksums.sha1
Run Code Online (Sandbox Code Playgroud)

其他选项是简单地使用curl 执行HEAD 请求:

curl -I http://$abc/$def/$qwe/file.a
Run Code Online (Sandbox Code Playgroud)

然后 grep 得到你想要的校验和。