可以用gem help commands看所有支持的参数,这个比gem -h显示的全:

wisy@wisy-ThinkPad-X61:~/src/ruby_src$ gem help commands
GEM commands are:

    build             Build a gem from a gemspec
    cert              Manage RubyGems certificates and signing settings
    check             Check a gem repository for added or missing files
    cleanup           Clean up old versions of installed gems
    contents          Display the contents of the installed gems
    dependency        Show the dependencies of an installed gem
    environment       Display information about the RubyGems environment
    fetch             Download a gem and place it in the current directory
    generate_index    Generates the index files for a gem server directory
    help              Provide help on the 'gem' command
    install           Install a gem into the local repository
    list              Display local gems whose name starts with STRING
    lock              Generate a lockdown list of gems
    mirror            Mirror all gem files (requires rubygems-mirror)
    outdated          Display all gems that need updates
    owner             Manage gem owners of a gem on the push server
    pristine          Restores installed gems to pristine condition from files
                      located in the gem cache
    push              Push a gem up to the gem server
    query             Query gem information in local or remote repositories
    rdoc              Generates RDoc for pre-installed gems
    search            Display remote gems whose name contains STRING
    server            Documentation and gem repository HTTP server
    sources           Manage the sources and cache file RubyGems uses to search
                      for gems
    specification     Display gem specification (in yaml)
    stale             List gems along with access times
    uninstall         Uninstall gems from the local repository
    unpack            Unpack an installed gem to the current directory
    update            Update installed gems to the latest version
    which             Find the location of a library file you can require
    yank              Remove a pushed gem from the index

For help on a particular command, use 'gem help COMMAND'.

Commands may be abbreviated, so long as they are unambiguous.
e.g. 'gem i rake' is short for 'gem install rake'.

windows下gem search默认是查找本地的gem,需要加-R以便查找远程的gem;linux like系统正好相反,默认是查找远程gem,如果要查找本地gem要加--local(或者-l).查询还可以用query选项,和search差不多.

gem list列出本地安装的第三方gem,可以用gem which查看某一个gem的路径:

wisy@wisy-ThinkPad-X61:~/src/ruby_src$ gem list

*** LOCAL GEMS ***

activemodel (4.1.8)
activerecord (4.1.8)
activesupport (4.1.8)
arel (6.0.0, 5.0.1.20140414130214)
bigdecimal (1.2.5, 1.2.4)
builder (3.2.2)
i18n (0.7.0.beta1)
io-console (0.4.2)
json (1.8.1)
md5sum (1.0.2)
minitest (5.4.3, 4.7.5)
net-ntp (2.1.2)
power_assert (0.2.2)
psych (2.0.8, 2.0.5)
rake (10.4.2, 10.1.0)
rdoc (4.2.0, 4.1.0)
RubyInline (3.12.3)
test-unit (3.0.8, 2.1.3.0)
thread_safe (0.3.4)
tzinfo (1.2.2)
webrick (1.3.1)
ZenTest (4.11.0)
zip (2.0.2)
wisy@wisy-ThinkPad-X61:~/src/ruby_src$ gem which zip
/var/lib/gems/2.1.0/gems/zip-2.0.2/lib/zip.rb

如果要看一个gem的详细信息,可以用gem specification,不过返回的是yaml格式,不过ruby中可以轻松将yaml转换为obj,从而用pp显示其"人类可读"内容:

wisy@wisy-ThinkPad-X61:~/src/ruby_src/drb$ gem specification zip>zip.doc
ruby -e"require 'yaml';require 'pp';pp YAML::load(File.read('zip.doc'))"
Gem::Specification.new do |s|
  s.name = "zip"
  s.version = Gem::Version.new("2.0.2")
  s.installed_by_version = Gem::Version.new("0")
  s.authors = ["Postmodern", "Thomas Sondergaard", "Sam Lown"]
  s.date = Time.utc(2010, 5, 26)
  s.description = "zip is a Ruby library for reading and writing Zip files. Unlike the official rubyzip, zip is compatible with Ruby 1.9.1."
  s.email = ["me@samlown.com", "postmodern.mod3@gmail.com"]
  s.extra_rdoc_files = ["ChangeLog.txt", "README"]
  s.files = ["ChangeLog.txt", "README"]
  s.homepage = "http://github.com/postmodern/rubyzip2"
  s.rdoc_options = ["--charset=UTF-8"]
  s.require_paths = ["lib"]
  s.rubygems_version = "2.2.2"
  s.specification_version = 4
  s.summary = "zip is a Ruby library for reading and writing Zip files"
  end

其实specification本身带有一个--ruby输出选项,输出和上面类似:gem specification zip --ruby,如果想查询远程gem的信息可以在后面加-r选项:gem specification xxx_gem --ruby -r

使用install可以从远程安装gem,不过有时候rubygems.org卡的和屎一样,这时要不你用代理,要不你从其他地方下载下来从本地安装:gem install --local xxx_gem.gem

可以用gem 查看某个gem的所有相关文件:

wisy@wisy-ThinkPad-X61:~/src/ruby_src/drb$ gem contents zip
/var/lib/gems/2.1.0/gems/zip-2.0.2/ChangeLog.txt
/var/lib/gems/2.1.0/gems/zip-2.0.2/NEWS.txt
/var/lib/gems/2.1.0/gems/zip-2.0.2/README
/var/lib/gems/2.1.0/gems/zip-2.0.2/Rakefile
/var/lib/gems/2.1.0/gems/zip-2.0.2/TODO.txt
/var/lib/gems/2.1.0/gems/zip-2.0.2/lib/zip.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/lib/zip/ioextras.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/lib/zip/stdrubyext.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/lib/zip/tempfile_bugfixed.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/lib/zip/version.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/lib/zip/zip.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/lib/zip/zipfilesystem.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/lib/zip/ziprequire.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/samples/example.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/samples/example_filesystem.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/samples/gtk_zip.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/samples/write_simple.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/samples/zipfind.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/alltests.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/data/file1.txt
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/data/file1.txt.deflatedData
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/data/file2.txt
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/data/notzippedruby.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/data/rubycode.zip
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/data/rubycode2.zip
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/data/testDirectory.bin
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/data/zipWithDirs.zip
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/gentestfiles.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/ioextrastest.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/stdrubyexttest.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/zipfilesystemtest.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/ziprequiretest.rb
/var/lib/gems/2.1.0/gems/zip-2.0.2/test/ziptest.rb

最后可以用gem update升级所有本地gem,也可以用gem outdated查看本地需要升级的gem.

rubygem若干常用选项参数的更多相关文章

  1. zip命令的常用选项

    zip命令的常用选项 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 大家都知道,在linux上一切皆文件,在实际生产环境中,如果我们需要部署一些系统的服务,我们会将一些软件包提前下 ...

  2. curl常用选项详解

    curl常用选项详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 又是下班的时间了,让我们一起来学习一下今天的Linux命令吧~我一半只把自己常用的参数列出来,其他的有但是我们几 ...

  3. MySQL Backup mysqldump 常用选项与主要用法

    The mysqldump client utility performs logical backups, producing a set of SQL statements that can be ...

  4. mysqldump命令之常用选项

    ===============================================mysqldump常用选项-h, --host=name:服务器IP-u, --user=name:登录名 ...

  5. JVM调优系列:(五)JVM常用调试参数和工具

    转自:http://blog.csdn.net/opensure/article/details/46715769 JVM常用调试参数: –verbose:gc在虚拟机发生内存回收时在输出设备显示信息 ...

  6. Hotspot JVM的常用选项

    Hotspot JVM的常用选项 选项的分类 Hotspot JVM提供以下三大类选项: 1. 标准选项:这类选项的功能是很稳定的,在后续版本中也不太会发生变化.运行java或者java -help可 ...

  7. 附1 consul常用命令+常用选项

    之后每用到一个command或options,都会记录在这里. 常用命令command: agent 作用:运行一个consul agent join 作用:将agent加入到consul clust ...

  8. maven常用命令参数

    整理了一些maven常用命令参数,以便参考:参考了maven官网和网上其他一些maven追随者的文件,不在此一一列举,但表示感谢! mvn命令参数 mvn -v, --version 显示版本信息; ...

  9. FPGA综合工具--Synplify Pro的常用选项及命令

    最近要用到Synplify,但以前没使用过,无基础,找到一篇帖子,隧保存下来. 本文转自:http://blog.sina.com.cn/s/blog_65fe490d0100v8ax.html Sy ...

随机推荐

  1. 内存管理单元--MMU

    现代操作系统普遍采用虚拟内存管理(Virtual Memory Management)机制,这需要处理器中的MMU(Memory Management Unit,内存管理单元)提供支持,本节简要介绍M ...

  2. iOS 南京互联网大会分享及个人见解 韩俊强的博客

    首先分两大块: 1.如何打造高效/稳定的App (重点): 2.软件自动化测试: 每日更新关注:http://weibo.com/hanjunqiang  新浪微博! 每日更新关注:http://we ...

  3. Linux上程序调试的基石(1)--ptrace

    引子: 1.在Linux系统中,进程状态除了我们所熟知的TASK_RUNNING,TASK_INTERRUPTIBLE,TASK_STOPPED等,还有一个TASK_TRACED.这表明这个进程处于什 ...

  4. Cocos2D将v1.0的tileMap游戏转换到v3.4中一例(五)

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 为了暂时不影响原来的cat移动方法,我们在CatSprite.m ...

  5. Android进阶(七)数据存储

    Android 数据存储 1访问资源文件 直接将文件保存在设备的内部存储. 默认情况下,保存到内部存储的文件为私有的,其他应用程序不能访问它们,当用户卸载应用程序时,所保存的文件也一并删除.  1.1 ...

  6. [C++学习历程]基础部分 C++中的函数学习

    本文地址:http://blog.csdn.net/sushengmiyan/article/details/20305815 作者:sushengmiyan 一.静态变量: 局部变量是线程到达定义的 ...

  7. 从JDK源码角度看并发竞争的超时

    JDK中的并发框架提供的另外一个优秀机制是锁获取超时的支持,当大量线程对某一锁竞争时可能导致某些线程在很长一段时间都获取不了锁,在某些场景下可能希望如果线程在一段时间内不能成功获取锁就取消对该锁的等待 ...

  8. OC语言实现中等难度通讯录

    实现中等难度通讯录.需求: 1.定义联系⼈人类Contact.实例变量:姓名(拼⾳音,⾸首字⺟母⼤大写).性别.电话号码. 住址.分组名称.年龄.⽅方法:⾃自定义初始化⽅方法(姓名.电话号码).显⽰示 ...

  9. 将Ext JS 5应用程序导入Web项目以及实现本地化

    在Ext JS 5,使用了新的脚本和样式加载方式,这对于将应用程序导入到Web项目中产生了点小麻烦.而对于本地化文件的导入,也采用了新的方式,本文将一一解答这些问题. 将Ext JS 5应用程序导入W ...

  10. 让Oracle 大小写敏感 表名 字段名 对像名

    一.解决方案 1.在表名.字段名.对象名上加上双引号,即可实现让oracle大小写区分. 2.但是这又引起了另一个问题:在数据库操作中,sql语句中相应的表名.字段名.对象名上一定要加双引号. 解决办 ...