Ruby Programming | 连载 05 - Ruby 工具集

简介: Ruby Programming | 连载 05 - Ruby 工具集

一、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 文件中去执行;引号内有多行代码时,可以通过 ; 分隔。

image.png

行模式运行 -l

ruby 解释器添加 -l 参数会产生换行的效果,即程序的每一次输出都会被自动换行,不管输出程序本身是否具备换行功能。

image.png

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 会显示如下信息:

image.png

该信息显示了 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 即可进行指定库的安装。

image.png

安装过程中 gem 会从 rubygem.org 下载所需要的 gem 文件,然后在进行安装。默认 gem 搜索的源是 rubygem.org,可以通过命令 gem sources 来查看,如下图所示:

image.png

也可以通过 gem sources -r/-a 来删除/添加新的 gem 源。

除了上面提到的几个 gem 命令外,常用的 gem 命令还有:

  • gem list:查询本地安装的 gem 包
  • gem search:查询远程仓库的 gem 包
  • gem uninstall:卸载当前安装的 gem 包
  • gem help:gem 命令的帮助信息

image.png

image.png

image.png


相关文章
|
Java C++ Ruby
Ruby Programming | 连载 06 - Ruby 面向对象
Ruby Programming | 连载 06 - Ruby 面向对象
Ruby Programming | 连载 06 - Ruby 面向对象
Ruby Programming | 连载 08 - Ruby 方法参数
Ruby Programming | 连载 08 - Ruby 方法参数
Ruby Programming | 连载 08 - Ruby 方法参数
Ruby Programming | 连载 07 - Ruby 对象的原生行为
Ruby Programming | 连载 07 - Ruby 对象的原生行为
Ruby Programming | 连载 07 - Ruby 对象的原生行为
|
存储 IDE 开发工具
Ruby Programming | 连载 03 - Ruby 对象基础
Ruby Programming | 连载 03 - Ruby 对象基础
Ruby Programming | 连载 03 - Ruby 对象基础
|
IDE Java Linux
Ruby Programming | 连载 01 - Intro and Setup
Ruby Programming | 连载 01 - Intro and Setup
Ruby Programming | 连载 01 - Intro and Setup
|
存储 Ruby
Ruby Programming | 连载 10 - Ruby 的类
Ruby Programming | 连载 10 - Ruby 的类
|
Scala Ruby
Ruby Programming | 连载 09 - Ruby 变量
Ruby Programming | 连载 09 - Ruby 变量
|
存储 Java 数据挖掘
Ruby Programming | 连载 04 - Ruby 扩展基础
Ruby Programming | 连载 04 - Ruby 扩展基础
|
存储 对象存储 Ruby
Ruby Programming | 连载 02 - Ruby 语法基础
Ruby Programming | 连载 02 - Ruby 语法基础