一、Ruby 工具集
在之前我们已经使用 ruby 解释器和 irb 交互解释器,除了这两个工具之外,安装 Ruby 时还自动安装了以下几个常用的工具:
- ri 和 rdoc:Ruby 文档工具
- rake:Ruby 的 make 工具,任务管理工具。
- gem:Ruby 库和应用程序包管理工具
- erb:Ruby 模板系统
- testerb:Ruby 的测试框架
ruby 解释器
使用 ruby 解释器执行时,可以添加一个或者多个参数,常用的 ruby 解释器参数有:
参数 | 参数描述 | 例子 |
-c | 不执行程序只检查文件的语法 | ruby -c hello.rb |
-w | 在程序执行过程中给出警告信息 | ruby -w hello.rb |
-e | 执行命令行中引号内的代码 | ruby -e 'puts "Hello, World"' |
-l | 行模式,在每一行输出后打印换行 | ruby -le 'prints "+ newline!"' |
-r | 请求或者加载指定名称的扩展,-r 即 require | ruby -r scanf |
-v | 显示 ruby 版本信息,在详细模式下执行程序 | ruby -v |
--version | 显示 ruby 版本信息 | ruby --version |
-h | 获取 ruby 解释器的帮助信息 | ruby -h |
执行字符串脚本 -e
使用 ruby 解释器添加 -e 参数后,会通知解释器执行命令行中引号内的 Ruby 代码,这样可以很方便的快速执行脚本代码,而不用再将代码放到 rb 文件中去执行;引号内有多行代码时,可以通过 ;
分隔。
行模式运行 -l
ruby 解释器添加 -l 参数会产生换行的效果,即程序的每一次输出都会被自动换行,不管输出程序本身是否具备换行功能。
ri 和 rdoc
ri(Ruby 索引) 和 RDoc(Ruby 文档)是 Ruby 程序提供文档的一对工具;ri 是一个命令行工具,而 RDoc 中也包含了一个命令行工具 rdoc;ri 和 rdoc 是两个独立的命令行工具。
Rdoc 是一个文档系统,在 Ruby 程序中使用 RDoc 的格式编写了代码注释,rdoc 会扫描程序并获取这些 Rdoc 格式的注释,然后组织这些注释创建出格式优雅的文档,在 Ruby 源码以及许多内置的 Ruby 文件中都可以看到 RDoc 的标记。
ri 和 RDoc 相互配合使用可以查看 RDoc 文档信息,在命令行中输入 ri String#upcase
会显示如下信息:
该信息显示了 String 对象的 upcase 方法的使用说明,其中类和方法之间使用 #
隔开,如果是查询类方法可以使用 ::
代替 #
。
rake 工具
rake 的名称来自 Ruby make,rake 是一个具有 make(Linux 中的 make 工具) 特性的任务管理工具,rake 读取和执行定义在一个文件中的任务,这个文件名称为 Rakefile。
在 Rails 应用中经常使用 rake 工具来创建或者更新数据库,也是通过执行 Rakefile 文件来实现的。
gem 工具
RubyGems 库和使用工具集合包括了打包、安装 Ruby 库和应用程序的工具,使用 RubyGems 安装 Ruby 库非常简单,类似于 Python 中的 pip
,只需要通过 gem intsall xxx
即可进行指定库的安装。
安装过程中 gem 会从 rubygem.org 下载所需要的 gem 文件,然后在进行安装。默认 gem 搜索的源是 rubygem.org,可以通过命令 gem sources
来查看,如下图所示:
也可以通过 gem sources -r/-a
来删除/添加新的 gem 源。
除了上面提到的几个 gem 命令外,常用的 gem 命令还有:
- gem list:查询本地安装的 gem 包
- gem search:查询远程仓库的 gem 包
- gem uninstall:卸载当前安装的 gem 包
- gem help:gem 命令的帮助信息