标签: json bash shell github-api
我正在使用GIT API获取最新版本的特定git存储库的浏览器下载URL。
Curl command : curl -i https://api.github.com/repos/$owner/$repo/releases
它将JSON数组作为响应。
让我们说,鉴于repo有5个版本。
我想获得JSON响应中第一个元素的“browser_download_url”值。
shell脚本中可以使用的命令是什么?
答案 0 :(得分:0)
首先,你不想使用-i开关,这只会弄乱json输出。
-i
其次,如果你查看了github的api文档,你可以使用正确的url直接获得你想要的数据。发布列表中的第一项将是最新发布的版本...所以请获取最新版本。
最后,您可以使用jq向下钻取到要检索的资源并获取网址。
$ curl https://api.github.com/repos/$owner/$repo/releases/latest \ | jq '.assets[].browser_download_url'
如果您需要特定的命名版本资产,可以使用select/1使用名称从资产数组中进行选择。
select/1