実行環境
組み込み定数
組み込み定数 |
値 |
STDIN |
標準入力 |
SDTOUT |
標準出力 |
STDERR |
標準エラー出力 |
ENV |
環境変数 |
ARGF |
スクリプトに指定した引数(ARGV )をファイル名とみなして、それらのファイルを連結したもの |
ARGV |
Ruby スクリプトに与えられた引数 |
DATA |
__END__ 以降をアクセスする File オブジェクト |
コマンドラインオプション
オプション |
指定した時の動作 |
-h |
ヘルプを表示する |
-v |
バージョンを表示する |
-c |
指定したファイルが文法的に正しいか確認する。実行はしない |
-e |
指定された文字列を Ruby プログラムとして実行する |
-w |
冗長モードでの実行。普段出力しないワーニングが出力される |
-W0 , -W1 , -W2 , -W |
出力範囲を指定した冗長モードでの実行。-W , -W2 では全て出力する |
-l |
$LOAD_PATH に、指定された文字列を追加する |
-r |
スクリプト実行前に、指定されたファイルを実行する |
-d |
デバッグモードで実行する |
主な環境変数
環境変数 |
使用用途 |
RUBYOPT |
デフォルトで指定するコマンドラインオプションを指定 |
RUBYLIB |
デフォルトでライブラリを検索するパスを指定 |
PATH |
Ruby 上から実行したコマンドを検索するパスを指定 |
主な特殊変数
変数名 |
参照される値 |
$_ |
最後に gets か readline で読み込んだ文字列 |
$& |
最後にマッチした文字列 |
$~ |
最後に成功したマッチに対する結果。$~[n] で参照できる |
$` |
マッチした部分より前の文字列 |
$' |
マッチした部分より後の文字列 |
$+ |
マッチした中で最後のカッコに対応する文字列 |
$1 , $2 , ... |
n番目のカッコに対応する文字列 |
$? |
最後に終了した子プロセスのステータス |
$! |
直近で補足した例外オブジェクト |
$@ |
バックトレースを表す配列 |
$0 |
現在実行中のプログラムファイル名 |
$* |
Rubyスクリプトに与えられた引数 |
$: |
load や require の検索パス($LOAD_PATH ) |
require と load
動作の違い
条件 |
require |
load |
同じファイルの実行 |
何度実行しても一度しか実行しない |
実行された回数だけ実行する |
ファイルの拡張子の省略 |
自動的に補完する |
補完しない |
require
: ライブラリの読み込み
load
: 設定情報の読み込み
読み込みルール
- 絶対パスで指定した場合
- 相対パスを指定した場合
- 組み込み変数
$LOAD_PATH
に格納されたパス順で探す。
どちらもファイルが見つからなければ LoadError
が発生する。
検索順序
-I
オプションで指定したディレクトリ
- Ruby のインストールディレクトリ(
$LOAD_PATH
に設定される)
- ruby を実行したカレントディレクトリ(
$LOAD_PATH
に設定される)
- 環境変数
RUBYLIB
に指定したディレクトリ