我正在从rubygems安装libv8 gem(大约512M),并想知道为什么花了这么长时间。此...
gem specification -r libv8
......没有给我任何宝石的大小。然后我查看docs,看起来宝石创建者可以选择在rubygems预定义的“可选gemspec属性”之一中放置有关宝石大小的信息。
问:在安装之前,人们无法可靠地知道远程gem的大小吗?
奖金问题:将gem size设为必需的gemspec属性是不切实际的吗?
答案 0 :(得分:4)
这是在OS X或Linux上执行此操作的可怕方法:
curl -s https://rubygems.org/api/v1/gems/<gem-name>.yaml | sed -n "s/gem_uri: //p" | xargs curl -sLI | grep Content-Length | tail -1
会给你大小(以字节为单位)。
说明:
使用curl和rubygems api获取有关gem的一些信息:
curl -s https://rubygems.org/api/v1/gems/thor.yaml
获取gem文件下载的URL
sed -n "s/gem_uri: //p"
下载gem的响应头(重定向后)
xargs curl -sLI
仅显示'Content-Length'的最后一个实例
grep Content-Length | tail -1
结果(~82k):
Content-Length: 83456