種類
- インスタンスメソッド (17)
- モジュール関数 (14)
- 特異メソッド (2)
- 文書 (2)
- ライブラリ (1)
ライブラリ
- ビルトイン (27)
-
irb
/ cmd / help (1) -
irb
/ cmd / load (3) -
rubygems
/ installer (2)
クラス
- BasicObject (2)
-
File
:: Stat (2) -
Gem
:: Installer (2) -
IRB
:: ExtendCommand :: Help (1) -
IRB
:: ExtendCommand :: Load (1) -
IRB
:: ExtendCommand :: Require (1) -
IRB
:: ExtendCommand :: Source (1) - Module (2)
- String (7)
キーワード
- Rubyの起動 (1)
- []= (7)
- ` (1)
-
class
_ exec (1) -
exec
_ format (1) - executable? (1)
-
executable
_ real? (2) - execute (4)
-
instance
_ eval (2) -
module
_ exec (1) - new (1)
-
rubygems
/ commands / install _ command (1) - spawn (4)
- system (4)
- セキュリティモデル (1)
検索結果
先頭5件
-
Kernel
. # exec(env , program , *args , options={}) -> () (63433.0) -
引数で指定されたコマンドを実行します。
引数で指定されたコマンドを実行します。
プロセスの実行コードはそのコマンド(あるいは shell)になるので、
起動に成功した場合、このメソッドからは戻りません。
この形式では、常に shell を経由せずに実行されます。
exec(3) でコマンドを実行すると、
元々のプログラムの環境をある程度(ファイルデスクリプタなど)引き継ぎます。
Hash を options として渡すことで、この挙動を変更できます。
詳しくは Kernel.#spawn を参照してください。
=== 引数の解釈
この形式で呼び出した場合、空白や shell のメタキャラクタも
そのまま program ... -
Kernel
. # exec(program , *args , options={}) -> () (63433.0) -
引数で指定されたコマンドを実行します。
引数で指定されたコマンドを実行します。
プロセスの実行コードはそのコマンド(あるいは shell)になるので、
起動に成功した場合、このメソッドからは戻りません。
この形式では、常に shell を経由せずに実行されます。
exec(3) でコマンドを実行すると、
元々のプログラムの環境をある程度(ファイルデスクリプタなど)引き継ぎます。
Hash を options として渡すことで、この挙動を変更できます。
詳しくは Kernel.#spawn を参照してください。
=== 引数の解釈
この形式で呼び出した場合、空白や shell のメタキャラクタも
そのまま program ... -
Kernel
. # exec(command , options={}) -> () (63403.0) -
引数で指定されたコマンドを実行します。
引数で指定されたコマンドを実行します。
プロセスの実行コードはそのコマンド(あるいは shell)になるので、
起動に成功した場合、このメソッドからは戻りません。
=== 引数の解釈
この形式では command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。
@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options... -
Kernel
. # exec(env , command , options={}) -> () (63403.0) -
引数で指定されたコマンドを実行します。
引数で指定されたコマンドを実行します。
プロセスの実行コードはそのコマンド(あるいは shell)になるので、
起動に成功した場合、このメソッドからは戻りません。
=== 引数の解釈
この形式では command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。
@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options... -
FileTest
. # executable _ real?(file) -> bool (45919.0) -
ファイルがカレントプロセスの実ユーザか実グループで実行できる時に真を返します。そうでない場合、ファイルが存在しない場合、あるいはシステムコールに失敗した場合などには false を返します。
ファイルがカレントプロセスの実ユーザか実グループで実行できる時に真を返します。そうでない場合、ファイルが存在しない場合、あるいはシステムコールに失敗した場合などには false を返します。
@param file ファイル名を表す文字列を指定します。
//emlist[例][ruby]{
IO.write("empty.txt", "")
File.chmod(0744, "empty.txt")
FileTest.executable_real?("empty.txt") # => true
File.chmod(0644, "empty.txt")
FileTest.ex... -
File
:: Stat # executable? -> bool (45619.0) -
実効ユーザ/グループIDで実行できる時に真を返します。
実効ユーザ/グループIDで実行できる時に真を返します。
//emlist[][ruby]{
p File::Stat.new($0).executable?
# 例
#=> true
//} -
File
:: Stat # executable _ real? -> bool (45619.0) -
実ユーザ/グループIDで実行できる時に真を返します。
実ユーザ/グループIDで実行できる時に真を返します。
//emlist[][ruby]{
p File::Stat.new($0).executable_real?
#例
#=> true
//} -
Module
# class _ exec(*args) {|*vars| . . . } -> object (36643.0) -
与えられたブロックを指定された args を引数としてモジュールのコンテキストで評価します。
与えられたブロックを指定された args を引数としてモジュールのコンテキストで評価します。
モジュールのコンテキストで評価するとは、実行中そのモジュールが self になるということです。
つまり、そのモジュールの定義式の中にあるかのように実行されます。
ローカル変数、定数とクラス変数のスコープはブロックの外側のスコープになります。
@param args ブロックに渡す引数を指定します。
//emlist[例][ruby]{
class Thing
end
c = 1
Thing.class_exec{
def hello()
"Hello there!"
... -
Module
# module _ exec(*args) {|*vars| . . . } -> object (36643.0) -
与えられたブロックを指定された args を引数としてモジュールのコンテキストで評価します。
与えられたブロックを指定された args を引数としてモジュールのコンテキストで評価します。
モジュールのコンテキストで評価するとは、実行中そのモジュールが self になるということです。
つまり、そのモジュールの定義式の中にあるかのように実行されます。
ローカル変数、定数とクラス変数のスコープはブロックの外側のスコープになります。
@param args ブロックに渡す引数を指定します。
//emlist[例][ruby]{
class Thing
end
c = 1
Thing.class_exec{
def hello()
"Hello there!"
... -
rubygems
/ commands / install _ command (36145.0) -
Gem パッケージをローカルリポジトリにインストールするためのライブラリです。
Gem パッケージをローカルリポジトリにインストールするためのライブラリです。
Usage: gem install GEMNAME [GEMNAME ...] [options] -- --build-flags [options]
Options:
--platform PLATFORM 指定されたプラットフォームの Gem パッケージをインストールします
-v, --version VERSION 指定されたバージョンの Gem パッケージをインストールします
Install/Update Op... -
IRB
:: ExtendCommand :: Help # execute(*names) -> nil (27667.0) -
RI から Ruby のドキュメントを参照します。
RI から Ruby のドキュメントを参照します。
irb(main):001:0> help String#match
...
@param names 参照したいクラス名やメソッド名などを文字列で指定します。
names を指定しなかった場合は、RI を対話的なモードで起動します。メソッド
名などを入力する事でドキュメントの検索が行えます。入力のタブ補完をする
事ができます。また、空行を入力する事で irb のプロンプトに戻る事ができま
す。
irb(main):001:0> help
Enter the method name you want to look... -
IRB
:: ExtendCommand :: Load # execute(file _ name , priv = nil) -> nil (27649.0) -
ファイル path を Ruby スクリプトとみなし、現在の irb インタプリタ上で実 行します。
ファイル path を Ruby スクリプトとみなし、現在の irb インタプリタ上で実
行します。
Kernel.#load と異なり、path の内容を irb で一行ずつタイプしたかの
ように、irb 上で一行ずつ評価されます。
@param file_name ファイル名を文字列で指定します。
@param priv 真を指定した場合は実行は内部的に生成される無名モジュール上
で行われ、グローバルな名前空間を汚染しません。
@raise LoadError 読み込みに失敗した場合に発生します。 -
Gem
:: Installer . exec _ format -> String (27322.0) -
実行ファイル名のフォーマットを返します。
実行ファイル名のフォーマットを返します。
指定しない場合は ruby コマンドと同じフォーマットを使用します。 -
Rubyの起動 (18784.0)
-
Rubyの起動 * cmd_option * shebang
Rubyの起動
* cmd_option
* shebang
Rubyインタプリタの起動は以下の書式のコマンドラインにより行います。
ruby [ option ...] [ -- ] [ programfile ] [ argument ...]
ここで、option は後述のcmd_option
のいずれかを指定します。-- は、オプション列の終りを明示するため
に使用できます。programfile は、Ruby スクリプトを記述したファイ
ルです。これを省略したり`-' を指定した場合には標準入力を Ruby ス
クリプトとみなします。
programfile が... -
IRB
:: ExtendCommand :: Source # execute(file _ name) -> nil (18649.0) -
現在の irb インタプリタ上で、 Ruby スクリプト path を評価します。
現在の irb インタプリタ上で、 Ruby スクリプト path を評価します。
path の内容を irb で一行ずつタイプしたかのように、irb 上で一行ずつ評価
されます。$" は更新されず、何度でも実行し直す事ができます。
@param file_name ファイル名を文字列で指定します。 -
IRB
:: ExtendCommand :: Require # execute(file _ name) -> bool (18619.0) -
ファイル file_name を現在の irb インタプリタ上で実行します。
ファイル file_name を現在の irb インタプリタ上で実行します。
file_name に Ruby スクリプトを指定した場合は、Kernel.#require と異
なり、file_name の内容を irb で一行ずつタイプしたかのように、irb 上で一
行ずつ評価されます。require に成功した場合は true を、そうでない場合は
false を返します。
拡張ライブラリ(*.so,*.o,*.dll など)を指定した場合は単純に require され
ます。
@param file_name ファイル名を文字列で指定します。 -
BasicObject
# instance _ eval {|obj| . . . } -> object (18355.0) -
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを
評価してその結果を返します。
オブジェクトのコンテキストで評価するとは評価中の self をそのオブジェクトにして実行するということです。
また、文字列 expr やブロック中でメソッドを定義すればそのオブジェクトの特異メソッドが定義されます。
ただし、ローカル変数だけは、文字列 expr の評価では instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。
メソッド定義の中で instance_eval でメソッドを定義した場... -
BasicObject
# instance _ eval(expr , filename = "(eval)" , lineno = 1) -> object (18355.0) -
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを
評価してその結果を返します。
オブジェクトのコンテキストで評価するとは評価中の self をそのオブジェクトにして実行するということです。
また、文字列 expr やブロック中でメソッドを定義すればそのオブジェクトの特異メソッドが定義されます。
ただし、ローカル変数だけは、文字列 expr の評価では instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。
メソッド定義の中で instance_eval でメソッドを定義した場... -
Kernel
. # system(command , options={}) -> bool | nil (9664.0) -
引数を外部コマンドとして実行して、成功した時に真を返します。
引数を外部コマンドとして実行して、成功した時に真を返します。
子プロセスが終了ステータス 0 で終了すると成功とみなし true を返します。
それ以外の終了ステータスの場合は false を返します。
コマンドを実行できなかった場合は nil を返します。
終了ステータスは変数 $? で参照できます。
コマンドを実行することができなかった場合、多くのシェルはステータス
127 を返します。シェルを介さない場合は Ruby の子プロセスがステータス
127 で終了します。
コマンドが実行できなかったのか、コマンドが失敗したのかは、普通
$? を参照することで判別可能です。
=== ... -
Kernel
. # system(env , command , options={}) -> bool | nil (9664.0) -
引数を外部コマンドとして実行して、成功した時に真を返します。
引数を外部コマンドとして実行して、成功した時に真を返します。
子プロセスが終了ステータス 0 で終了すると成功とみなし true を返します。
それ以外の終了ステータスの場合は false を返します。
コマンドを実行できなかった場合は nil を返します。
終了ステータスは変数 $? で参照できます。
コマンドを実行することができなかった場合、多くのシェルはステータス
127 を返します。シェルを介さない場合は Ruby の子プロセスがステータス
127 で終了します。
コマンドが実行できなかったのか、コマンドが失敗したのかは、普通
$? を参照することで判別可能です。
=== ... -
Kernel
. # system(env , program , *args , options={}) -> bool | nil (9664.0) -
引数を外部コマンドとして実行して、成功した時に真を返します。
引数を外部コマンドとして実行して、成功した時に真を返します。
子プロセスが終了ステータス 0 で終了すると成功とみなし true を返します。
それ以外の終了ステータスの場合は false を返します。
コマンドを実行できなかった場合は nil を返します。
終了ステータスは変数 $? で参照できます。
コマンドを実行することができなかった場合、多くのシェルはステータス
127 を返します。シェルを介さない場合は Ruby の子プロセスがステータス
127 で終了します。コマンドが実行できなかったのか、コマンドが失敗したの
かは、普通 $? を参照することで判別可能です。
Hash... -
Kernel
. # system(program , *args , options={}) -> bool | nil (9664.0) -
引数を外部コマンドとして実行して、成功した時に真を返します。
引数を外部コマンドとして実行して、成功した時に真を返します。
子プロセスが終了ステータス 0 で終了すると成功とみなし true を返します。
それ以外の終了ステータスの場合は false を返します。
コマンドを実行できなかった場合は nil を返します。
終了ステータスは変数 $? で参照できます。
コマンドを実行することができなかった場合、多くのシェルはステータス
127 を返します。シェルを介さない場合は Ruby の子プロセスがステータス
127 で終了します。コマンドが実行できなかったのか、コマンドが失敗したの
かは、普通 $? を参照することで判別可能です。
Hash... -
Gem
:: Installer . new(gem , options = {}) -> Gem :: Installer (9391.0) -
@todo 書いてないオプションがいっぱいある
@todo 書いてないオプションがいっぱいある
与えられた引数で自身を初期化します。
@param gem インストール対象の Gem のパスを指定します。
@param options インストーラが使用するオプションをハッシュで指定します。
使用できるキーは以下の通りです。
: :env_shebang
コマンドのラッパーで shebang line に /usr/bin/env を使用します。
: :force
署名された Gem のみをインストールするというポリシー以外、
全てのバージョンチェックとセキュリティポリシーのチェックを行わない... -
Kernel
. # spawn(env , program , *args , options={}) -> Integer (9367.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
env に Hash を渡すことで、exec(2) で子プロセス内で
ファイルを実行する前に環境変数を変更することができます。
Hash のキーは環境変数名文字列、Hash の値に設定する値とします。
nil とすることで環境変数が削除(unsetenv(3))されます。
//emlist[例][ruby]{
# FOO を BAR にして BAZ を削除する
pid = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//... -
Kernel
. # spawn(program , *args) -> Integer (9367.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
env に Hash を渡すことで、exec(2) で子プロセス内で
ファイルを実行する前に環境変数を変更することができます。
Hash のキーは環境変数名文字列、Hash の値に設定する値とします。
nil とすることで環境変数が削除(unsetenv(3))されます。
//emlist[例][ruby]{
# FOO を BAR にして BAZ を削除する
pid = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//... -
セキュリティモデル (9229.0)
-
セキュリティモデル RubyにはCGI等のプログラミングを安全に行うことを助ける為に、セキュリティ 機構が備わっています。
セキュリティモデル
RubyにはCGI等のプログラミングを安全に行うことを助ける為に、セキュリティ
機構が備わっています。
Rubyのセキュリティモデルは「オブジェクトの汚染」と「セーフレベル」という
仕組みによってなりたっています。
=== オブジェクトの汚染
Rubyではオブジェクトは「汚染されている」とみなされることがあります。この
しくみは大きく分けて二つの使われ方をします。
ひとつ目は、信用できない入力をもとに作られたオブジェクトを「汚染されてい
る」とみなし、「危険な操作」の引数として使えないようにすることです。悪意
あるデータによって、プログラムが意図しない動作をする事... -
Kernel
. # spawn(command , options={}) -> Integer (9097.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
=== 引数の解釈
この形式では command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。
@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash... -
Kernel
. # spawn(env , command , options={}) -> Integer (9097.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
=== 引数の解釈
この形式では command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。
@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash... -
Kernel
. # `(command) -> String (9073.0) -
command を外部コマンドとして実行し、その標準出力を文字列として 返します。このメソッドは `command` の形式で呼ばれます。
command を外部コマンドとして実行し、その標準出力を文字列として
返します。このメソッドは `command` の形式で呼ばれます。
引数 command に対しダブルクォートで囲まれた文字列と同様の解釈と式展開を行った後、
コマンドとして実行します。
コマンドは評価されるたびに実行されます。コマンドの終了ステータスを得るには、$? を参照します。
コマンドの出力を得る必要がなく、単にコマンドを実行したいだけなら
Kernel.#system を使います。特に端末を制御するコマンドでは
`command` は失敗するかもしれません。
d:spec/literal#command ... -
String
# []=(regexp , nth , val) (352.0) -
正規表現 regexp の nth 番目の括弧にマッチする 最初の部分文字列を文字列 val で置き換えます。
正規表現 regexp の nth 番目の括弧にマッチする
最初の部分文字列を文字列 val で置き換えます。
nth が 0 の場合は、マッチした部分文字列全体を val で置き換えます。
@param regexp 置き換えたい部分文字列のパターンを示す正規表現
@param nth 置き換えたい部分文字列のパターンを示す正規表現レジスタの番号
@param val 指定範囲の部分文字列と置き換えたい文字列
@return val を返します。
@raise IndexError 正規表現がマッチしなかった場合に発生します。
//emlist[例]... -
String
# []=(nth , len , val) (337.0) -
nth 番目の文字から len 文字の部分文字列を文字列 val で置き換えます。
nth 番目の文字から len 文字の部分文字列を文字列 val で置き換えます。
len が0 の場合は、単にnthの位置から文字列の追加が行われます。
nth が負の場合は文字列の末尾から数えます。
@param nth 置き換えたい部分文字列の開始インデックス
@param len 置き換えたい部分文字列の長さ
@param val 指定範囲の部分文字列と置き換える文字列
@return val を返します。
//emlist[例][ruby]{
buf = "string"
buf[1, 4] = "!!"
p buf # => "s!!g"
buf ... -
String
# []=(nth , val) (337.0) -
nth 番目の文字を文字列 val で置き換えます。
nth 番目の文字を文字列 val で置き換えます。
@param nth 置き換えたい文字の位置を指定します。
@param val 置き換える文字列を指定します。
@return val を返します。
//emlist[例][ruby]{
buf = "string"
buf[1] = "!!"
p buf # => "s!!ring"
//} -
String
# []=(regexp , name , val) (337.0) -
正規表現 regexp の name で指定した名前付きキャプチャにマッチする最初の 部分文字列を文字列 val で置き換えます。
正規表現 regexp の name で指定した名前付きキャプチャにマッチする最初の
部分文字列を文字列 val で置き換えます。
@param regexp 置き換えたい部分文字列のパターンを示す正規表現
@param name 置き換えたい部分文字列のパターンを示す正規表現レジスタを示す名前
@param val 指定範囲の部分文字列と置き換えたい文字列
@return val を返します。
@raise IndexError name で指定した名前付きキャプチャが存在しない場合に発
生します。
//emlist[... -
String
# []=(regexp , val) (337.0) -
正規表現 regexp にマッチした部分文字列全体を val で置き換えます。
正規表現 regexp にマッチした部分文字列全体を val で置き換えます。
@param regexp 置き換えたい部分文字列のパターンを示す正規表現
@param val 置き換えたい文字列
@return val を返します。
@raise IndexError 正規表現がマッチしなかった場合に発生します。
//emlist[例][ruby]{
buf = "string"
buf[/tr../] = "!!"
p buf # => "s!!g"
//} -
String
# []=(substr , val) (337.0) -
文字列中の substr に一致する最初の部分文字列を文字列 val で置き換えます。
文字列中の substr に一致する最初の部分文字列を文字列 val で置き換えます。
@param substr 置き換えたい部分文字列のパターンを示す文字列
@param val 指定範囲の部分文字列と置き換える文字列
@return val を返します。
@raise IndexError self が部分文字列 substr を含まない場合に発生します。
//emlist[例][ruby]{
buf = "string"
buf["trin"] = "!!"
p buf # => "s!!g"
buf = "string"
buf["nosuch... -
String
# []=(range , val) (322.0) -
rangeで指定したインデックスの範囲に含まれる部分文字列を文字列 val で置き換えます。
rangeで指定したインデックスの範囲に含まれる部分文字列を文字列 val で置き換えます。
@param range 置き換えたい範囲を示す Range オブジェクト
@return val を返します。