load(file, priv = false) -> true
[permalink][rdoc][edit]-
Ruby プログラム file をロードして実行します。再ロード可能です。
file が絶対パスのときは file からロードします。 file が相対パスのときは組み込み変数 $: に示されるパスとカレントディレクトリを順番に探し、最初に見付かったファイルをロードします。このとき、$: の要素文字列の先頭文字が `~' (チルダ) だと、環境変数 HOME の値に展開されます。また `~USER' はそのユーザのホームディレクトリに展開されます。
ロードに成功した場合は true を返します。
- [PARAM] file:
- ファイル名の文字列です。
- [PARAM] priv:
- 真のとき、ロード・実行は内部的に生成される無名モジュールをトップレベルとして行われ、グローバルな名前空間を汚染しません。
- [EXCEPTION] LoadError:
- ロードに失敗した場合に発生します。
[SEE_ALSO] Kernel.#require
require と load の違い
Kernel.#require は同じファイルは一度だけしかロードしませんが、 Kernel.#load は無条件にロードします。また、require は拡張子.rb や .so を自動的に補完しますが、 load は行いません。 require はライブラリのロード、load は設定ファイルの読み込みなどに使うのが典型的な用途です。
load "#{ENV['HOME']}/.myapprc" load "/etc/myapprc"
なお、特定のディレクトリからファイルをロードしたい場合、 load 'filename' とするのは不適切です。必ず絶対パスを使ってください。