Ruby on RailsでWebシステムを構築するなら、ライブラリを管理できなければなりません。Rubyのライブラリ管理でまず覚えて欲しいのがgem listです。
gem listはインストールされたライブラリのリストを表示するコマンドですが、機能はそれだけではありません。今回はRuby on Rails初心者の方にgem listの使い方について詳しく解説します。
Rubyのライブラリgemの基本
Rubyで開発するするならRubyGensのライブラリを活用するのが基本です。Ruby on Rilasを使おうとしたら、rails自体をRubyGemsからインストールしなければなりません。RubyGemsを利用するために必要なコマンドがgemです。
そしてgemに続けてコマンドを指定することで、インターネットを介してRubyのライブラリをインストールしたり、アップデートしたりできます。
今回はRubyGemsのリストを表示するためのコマンド、gem listについて紹介しますが、まずはそもそもgemコマンドとは何かについて説明介します。
そもそもgemとは
そもそもgemは、Ruby用の便利なライブラリを集めて公開しているRubyGemsから、利用したりライブラリをインストールしたり、そのライブラリを管理するためのコマンドです。
なおRubyGemsには多くの便利なライブラリが収録されていますが、その代表がRuby on Railsの中心となるrailsライブラリです。そのためRuby on RailsでWebシステムを開発するなら必ず利用するコマンドなので、Rubyユーザーになるなら使い方をマスターしておきましょう。
gemコマンドの使い方
gemをインストールすると、ターミナルのシェルなどからgemに続けてコマンドを指定するとで、gemの機能が使えます。
gemコマンドの使い方
gem (コマンド) (オプション)
なおgemには多くのコマンドが用意されていますが、コマンドによって指定できる引数が違っているので、後から説明するヘルプ表示などを利用して、使い方を確認してください。
インストールしたgemはlistコマンドでチェック
Rubyが使える環境ならgem installコマンドを利用して、RubyGemsに登録されているRubyのライブラリをインストールできます。
ただしライブラリには依存関係があり、使いたいライブラリによっては依存関係にあるライブラリも必要です。そのためRubyGemsのライブラリの管理には、その依存関係を管理するbundlerもよく利用されます。
そして、インストールしてあるgemライブラリのリストを表示してチェックするためのコマンドが今回紹介するgem listです。
gem listコマンドの基本
先ほど紹介したようにgemはRubyGemsが公開しているRuby用ライブラリを管理するためのツールです。gemはライブラリをインストールしたり削除すると場面でも使いますが、インストールされているライブラリ一覧を表示するgem listコマンドもその機能の1つです。
次からgem listコマンドの使い方を紹介します。
gemを使うには
先ほども紹介しましたがOSにRubyをインストールするとrubyコマンドと同じようにgemコマンドも使えるはずです。gemでライブラリを管理するなら、まずgemコマンドが使えることをチェックしてください。
gemコマンドが使えるかチェックするには、インストールされているgemのバージョンを表示します。
gemのバージョンを表示する方法
$ gem -v
gemが使えると解ったら、使えるコマンドをチェックするためヘルプメッセージを表示してみてください。なお引数を指定しないでgemを実行してもgem -hでヘルプを表示し
gemのヘルプメッセージを表示する方法
$gem -h または $gem
gem listの機能
gemに続いてlistコマンドを指定すると、gemの管理化でインストールされているライブラリの一覧を表示されます。
gem listコマンドの実行方法
gem list
さらにlistコマンドはオプションを指定できます。オプションとして検索パターンを指定しすると該当するライブラリを表示し、また別のオプションでライブラリの詳しい情報を表示することも可能です。
gem listコマンドの文法
gem list [検索パターン] [オプション]
なおgem listコマンドのオプションは、gemのヘルプにlistを指定することで表示できます。使い方を確認したい場合は、ターミナルで次のコマンドを実行してください。
gem listコマンドのヘルプ表示
$ gem help list
gem listの実行例
単純にgem listコマンドを実行すると、gemを利用してインストールしたライブラリが全て表示されます。しかし、Ruby on Railsをインストールしただけで多くのライブラリが表示されるので、この中から探すのは不便です。
もしこんなライブラリがインストールされているかを調べたい場合は、次のように探したいライブラリの文字の一部を指定してください。
jsonライブラリがインストールされているかチェックする例
$ gem list json *** LOCAL GEMS *** json (defualt: 2.5.1)
gem listの使い方
これまで紹介したようにRuby用のライブラリを表示するコマンドがgem listです。しかし、gem listの機能は、単純にインストールされているRubyのライブラリを表示するだけではありません。
次からgem listのオプションを使った使い方を紹介します。
正規表現で検索できる
gem listコマンドにはライブラリの名称を指定して、それに該当するリストを表示することが可能です。そしてライブラリの検索に使うパターンとして正規表現を利用できます。
例えば、rで始まるライブラリの一覧を表示した場合は次のように指定してください。
$ gem list ^r
なお正規表現がRubyのプログラムの中でもよく利用されます。ぜひ正規表現の使い方もマスターしておきましょう。
リポジトリを検索する
通常gem listコマンドを使用するとインストール済のライブラリが表示されます。しかし、新たにライブラリを利用することになり、それがインストール可能かどうかをチェックしたいケースがあるでしょう。
そのような場合は、「-r」オプションで検索先をリポジトリに変更できます。なおリポジトリとはRubyGemsのダウンロードサイトのことです。
gem listでリポジトリを検索する例
$ gem list ^rails$ -r
これは「-r」オプションを指定し、リポジトリにある「rails」を検索した例です。なお、ライブラリ名にrailsを含むライブラリがたくさんあるので、正規表現の「^」と「$」を指定して検索対象を「rails」のみに限定しています。
詳しい情報を表示する
先ほど紹介したようにgem listコマンドでライブラリを検索するとライブラリの名称とバージョンが1行に表示されます。しかし「-d」オプションとライブラリ名を指定することで、そのライブラリに関する詳しい情報の表示が可能です。
gem listで詳しい情報を表示する例
$ gem list json -d *** LOCAL GEMS *** json (2.5.1) Author: Florian Frank Homepage: https:/flori.github.com/json License:Ruby INstalled at (default): (インストールディレクトリ) JSON Implementation for Ruby
まとめ
これまで紹介したようにRubyのライブりRubyGemsのリストを表示するコマンドがgem listです。インストールされているRubyGemsはもちろん、オプションを指定することでダウンロード可能なRubyGemsのリストを表示することも可能です。
gemを利用する際には必須のコマンドなので、ぜひ、その使い方をマスターしてください。