るりまサーチ

最速Rubyリファレンスマニュアル検索!
144件ヒット [1-100件を表示] (0.073秒)
トップページ > クエリ:Ruby[x] > クエリ:ruby[x] > モジュール:Kernel[x] > クエリ:p[x] > クエリ:exec[x]

別のキーワード

  1. fiddle ruby_free
  2. rbconfig ruby
  3. fiddle build_ruby_platform
  4. rake ruby
  5. rubygems/defaults ruby_engine

ライブラリ

キーワード

検索結果

<< 1 2 > >>

Kernel.#exec(env, program, *args, options={}) -> () (18266.0)

引数で指定されたコマンドを実行します。

...実行されます。

exec
(3) でコマンドを実行すると、
元々のプログラムの環境をある程度(ファイルデスクリプタなど)引き継ぎます。
Hash を options として渡すことで、この挙動を変更できます。
詳しくは Kernel.#spawn を参照して...
...列を指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash
@raise ArgumentError 第一引数が配列かつ要素数が 2 でない場合に発生します。
@raise Errno::EXXX 起動に失敗し、ruby インタプリタに制御...
...//emlist[例][ruby]{
# a.rb
exec
['sleep', 'mysleep'], '600'
//}

上記スクリプトを実行すると以下のようになります。

$ ruby a.rb
## sleep してるので制御が戻ってこない。別の仮想端末に切替えて以下を実行
$ ps aux|grep sleep
xxxx 32754...

Kernel.#exec(program, *args, options={}) -> () (18266.0)

引数で指定されたコマンドを実行します。

...実行されます。

exec
(3) でコマンドを実行すると、
元々のプログラムの環境をある程度(ファイルデスクリプタなど)引き継ぎます。
Hash を options として渡すことで、この挙動を変更できます。
詳しくは Kernel.#spawn を参照して...
...列を指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash
@raise ArgumentError 第一引数が配列かつ要素数が 2 でない場合に発生します。
@raise Errno::EXXX 起動に失敗し、ruby インタプリタに制御...
...//emlist[例][ruby]{
# a.rb
exec
['sleep', 'mysleep'], '600'
//}

上記スクリプトを実行すると以下のようになります。

$ ruby a.rb
## sleep してるので制御が戻ってこない。別の仮想端末に切替えて以下を実行
$ ps aux|grep sleep
xxxx 32754...

Kernel.#exec(command, options={}) -> () (18256.0)

引数で指定されたコマンドを実行します。

...@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash
@raise Errno::EXXX 起動に失敗し、ruby インタプリタに制御が戻った場合に発生します。

//emlist[例][ruby]{
#...
...a.rb
p
uts '実行前'
exec
'echo "実行中"'
p
uts '実行後'
//}

上記のスクリプトを実行すると以下のようになります。

$ ruby a.rb
実行前
実行中
# '実行後' は表示されない...

Kernel.#exec(env, command, options={}) -> () (18256.0)

引数で指定されたコマンドを実行します。

...@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash
@raise Errno::EXXX 起動に失敗し、ruby インタプリタに制御が戻った場合に発生します。

//emlist[例][ruby]{
#...
...a.rb
p
uts '実行前'
exec
'echo "実行中"'
p
uts '実行後'
//}

上記のスクリプトを実行すると以下のようになります。

$ ruby a.rb
実行前
実行中
# '実行後' は表示されない...

Kernel.#spawn(env, program, *args, options={}) -> Integer (6338.0)

引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。

...exec(2) で子プロセス内で
ファイルを実行する前に環境変数を変更することができます。
Hash のキーは環境変数名文字列、Hash の値に設定する値とします。
nil とすることで環境変数が削除(unsetenv(3))されます。
//emlist[例][ruby]{...
...# FOO を BAR にして BAZ を削除する
p
id = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//}

親プロセスは Process.#waitpid で子プロセスの終了を待ち合わせるか
もしくは Process.#detach で子プロセスを切り離すかしてください。
そうでないとゾンビ...
...リプタ

=== option引数の詳細および例

「:unsetenv_others」を使うと、envで指定したもの以外の環境変数を
クリアします。
//emlist[][ruby]{
# すべての環境変数をクリア
p
id = spawn(command, :unsetenv_others=>true)
# FOO だけ
p
id = spawn({"FOO"=>"BAR"},...
...す。
false がデフォルトです。

: :exception
Kernel
.#system のみで指定できます。
これを true に設定すると、nil や false を返す代わりに例外が発生します。
false がデフォルトです。

=== option引数によるリダイレクトの概要
Hash...

絞り込み条件を変える

Kernel.#spawn(program, *args) -> Integer (6338.0)

引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。

...exec(2) で子プロセス内で
ファイルを実行する前に環境変数を変更することができます。
Hash のキーは環境変数名文字列、Hash の値に設定する値とします。
nil とすることで環境変数が削除(unsetenv(3))されます。
//emlist[例][ruby]{...
...# FOO を BAR にして BAZ を削除する
p
id = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//}

親プロセスは Process.#waitpid で子プロセスの終了を待ち合わせるか
もしくは Process.#detach で子プロセスを切り離すかしてください。
そうでないとゾンビ...
...リプタ

=== option引数の詳細および例

「:unsetenv_others」を使うと、envで指定したもの以外の環境変数を
クリアします。
//emlist[][ruby]{
# すべての環境変数をクリア
p
id = spawn(command, :unsetenv_others=>true)
# FOO だけ
p
id = spawn({"FOO"=>"BAR"},...
...す。
false がデフォルトです。

: :exception
Kernel
.#system のみで指定できます。
これを true に設定すると、nil や false を返す代わりに例外が発生します。
false がデフォルトです。

=== option引数によるリダイレクトの概要
Hash...

Kernel.#spawn(command, options={}) -> Integer (6158.0)

引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。

...プリタから直接実行されます。


@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash
@raise Errno::EXXX 起動に失敗し、ruby インタプリタに制御が戻った場合に...
...発生します。

@raise Errno::EXXX コマンドが実行できなかった場合に発生します。


@see Kernel.#system,Kernel.#exec...

Kernel.#spawn(env, command, options={}) -> Integer (6158.0)

引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。

...プリタから直接実行されます。


@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash
@raise Errno::EXXX 起動に失敗し、ruby インタプリタに制御が戻った場合に...
...発生します。

@raise Errno::EXXX コマンドが実行できなかった場合に発生します。


@see Kernel.#system,Kernel.#exec...

Kernel.#system(command, options={}) -> bool | nil (184.0)

引数を外部コマンドとして実行して、成功した時に真を返します。

...以外の終了ステータスの場合は false を返します。
コマンドを実行できなかった場合は nil を返します。

options で :exception に true を指定することで、
nil や false を返す代わりに例外を発生するようにできます。

終了ステー...
...ドを実行することができなかった場合、多くのシェルはステータス
127 を返します。シェルを介さない場合は Ruby の子プロセスがステータス
127 で終了します。
コマンドが実行できなかったのか、コマンドが失敗したのかは...
...ption: true が指定されていて、コマンドの実行が失敗したときに発生します。
@raise RuntimeError exception: true が指定されていて、コマンドの終了ステータスが 0 以外のときに発生します。

//emlist[シェル経由でコマンドを実行][ruby...
<< 1 2 > >>