假设我的GEM_HOME
的bin目录中有一个文件,如~/.gem/ruby/2.4.0/bin/foo
或其他内容。如何确定哪个宝石拥有该文件?
以下是其他包管理员的类似问题;我正在寻找专门针对Ruby gems的答案:
答案 0 :(得分:1)
打开bin文件并查看其内容。它应该只是一个普通的Ruby文件。在某个地方,你通常会看到这样的东西:
load Gem.bin_path('gemname', 'gemname', version)
其中gemname
将是文件所属的gem的名称。
如果没有这样的行,你将不得不做一些侦探工作,但通常你可以从bin名称或文件本身的代码中找出它。
您还可以快速验证此类特定宝石的bin
内容,这有助于追踪候选人:
gem contents gemname | grep bin
或者,如果您只想扫描所有内容:
gem contents --all | grep file_you_want_to_find