組み込み定数
ruby標準で用意されている定数
組み込み定数 | 値 |
---|---|
STDIN | 標準入力 |
STDOUT | 標準出力 |
STDERR | 標準エラー出力 |
ENV | 環境変数 |
ARGF | 仮想ファイル |
ARGV | Rubyスクリプトに与えられた引数 |
DATA | スクリプト内の__END__以降に記述された内容にアクセスするFileオブジェクト |
ENVの内容を参照する
ENV["RBENV_VERSION"] =>"2.0.0-p247" ENV["USER"] => "tamata" ENV["SHELL"] => "/bin/zsh" ENV["PATH"] => "/Users/tamata/.rvm/bin ・・・・"
使い方は以下を参考に qiita.com
主なコマンドラインオプション
コマンドラインオプション | 指定時の動作 |
---|---|
-h | ヘルプを表示 |
-v | バージョンを表示 |
-c | 指定されたファイルの文法チェック。実行なし |
-e | コマンドラインからのスクリプト指定 |
-w | 冗長モードでの実行。普段出力しないワーニングが出力 |
-W0,-W1,-W2,-W | 出力範囲を指定した冗長モードでの実行 |
-I | $LOAD_PATHに、指定された文字列を追加する |
-r | スクリプト実行前に指定されたファイルを実行 |
-d | デバッグモードで実行する |
冗長モード
オプション | 指定時の動作 | $VERBOSE(冗長メッセージフラグ) |
---|---|---|
-W0 | 警告を出力しない | nil |
-W1 | 重要な警告のみ出力(デフォルト) | false |
-W2 or -W or (-v) | すべての警告を出力する | true |
参考URL:Rubyの起動 (Ruby 1.9.3)
warn
$VERBOSEがnil以外の場合にSTDERR(標準エラー出力)へメッセージを出力する。
warn "caution!" #=> caution! $VERBOSE = nil warn "caution!" # 何もしない
参考URL: module function Kernel.#warn (Ruby 2.0.0)
requireとload
requireとloadとの違い
条件 | require | load |
---|---|---|
同ファイルロード | 一度しかロードしない | 何度でも読み込む |
ファイル拡張子の補完 | 自動補完 | 補完しない |
類似メソッドでautoloadも存在
autoload(const_name, 'ファイル名') # まだロードされていない。 puts const_name # この時点でロードされる
const_nameが参照された時点で指定ファイルを用いて読み込む。
const_nameには定数、シンボルが使用できる。
autoloadについては以下がわかりやすい
3/3 require, require_relative, load, autoloadの違い [Ruby] All About
指定されたファイルを探すルール(相対パス指定の場合)
下記の順序でファイルを読み込みにいく
1. ruby実行オプション -Iで指定したフォルダ
2. 組み込み変数$LOAD_PATHに格納されたパス順に読み込む
→上記変数の一般的な設定値:Rubyインストールフォルダ→ruby実行フォルダ
3. 環境変数RUBYLIBにしてしたパス