Rubyのライブラリ検索
ロードパスにあるライブラリのパスを表示。
#!/usr/bin/ruby -Ku require 'rbconfig' def lib_list(name) $:.each do |path| next unless FileTest.directory?(path) dlext = RbConfig::CONFIG["DLEXT"] Dir.open(path) do |dir| dir.each do |file| if file =~ /\.rb$/i || file =~ /\.#{dlext}$/i puts "#{path}/#{file}" if file =~ /#{name}/i puts "#{path}/#{file}" unless name end end end end end lib_list(ARGV[0] || nil)
こんな感じ。
$ ./lib_list.rb WEBrick /usr/lib/ruby/1.8/webrick.rb $ ./lib_list.rb Stringio /usr/lib/ruby/1.8/i486-linux/stringio.so