るりまサーチ

最速Rubyリファレンスマニュアル検索!
84件ヒット [1-84件を表示] (0.091秒)

別のキーワード

  1. _builtin spawn
  2. kernel spawn
  3. pty spawn
  4. etc sc_spawn
  5. process spawn

ライブラリ

モジュール

キーワード

検索結果

Open3.#popen3(*cmd) -> [IO, IO, IO, Thread] (31.0)

外部プログラム cmd を実行し、そのプロセスの標準入力、標準出力、標準エラー 出力に接続されたパイプと実行したプロセスを待つためのスレッドを 4 要素の 配列で返します。

...果を返します。

require 'open3'

Open3.popen3("read stdin; echo stdout; echo stderr >&2") {|stdin, stdout, stderr, wait_thr|
stdin.puts "stdin"
stdin.close # または close_write
p stdout.read
p stderr.read
}
#=> "stdout\n"
"stderr\n"


stdin への入力が...
...Open3 で作成した子プロセスは
wait(2) しなくてもゾンビになりません。

引数 cmd はそのまま Kernel.#spawn に渡されます。
Kernel.#spawnと同様に、引数リストの最初に環境変数をハッシュ形式で
指定する事ができます。

例:

require...
...en3'

Open3.popen3({"foo" => "1", "bar" => "2"}, "env") {|i, o, e, t|
i.close
print o.read
}
#=> ...
foo=1
bar=2

Kernel.#spawnと同様に、引数リストの最後にオプションをハッシュ形式
で指定する事ができます。

例:

require "open3"

#...

Open3.#popen3(*cmd) {|stdin, stdout, stderr, wait_thr| ... } -> () (31.0)

外部プログラム cmd を実行し、そのプロセスの標準入力、標準出力、標準エラー 出力に接続されたパイプと実行したプロセスを待つためのスレッドを 4 要素の 配列で返します。

...果を返します。

require 'open3'

Open3.popen3("read stdin; echo stdout; echo stderr >&2") {|stdin, stdout, stderr, wait_thr|
stdin.puts "stdin"
stdin.close # または close_write
p stdout.read
p stderr.read
}
#=> "stdout\n"
"stderr\n"


stdin への入力が...
...Open3 で作成した子プロセスは
wait(2) しなくてもゾンビになりません。

引数 cmd はそのまま Kernel.#spawn に渡されます。
Kernel.#spawnと同様に、引数リストの最初に環境変数をハッシュ形式で
指定する事ができます。

例:

require...
...en3'

Open3.popen3({"foo" => "1", "bar" => "2"}, "env") {|i, o, e, t|
i.close
print o.read
}
#=> ...
foo=1
bar=2

Kernel.#spawnと同様に、引数リストの最後にオプションをハッシュ形式
で指定する事ができます。

例:

require "open3"

#...

Kernel.#`(command) -> String (19.0)

command を外部コマンドとして実行し、その標準出力を文字列として 返します。このメソッドは `command` の形式で呼ばれます。

...Errno::EXXX コマンドを実行できないときや失敗した場合に発生します。

//emlist[例][ruby]{
puts
`ruby -v` #=> ruby 1.8.6 (2007-03-13 patchlevel 0) [i386-mswin32]
puts
$?.inspect #=> #<Process::Status: pid=3580,exited(0)>
//}

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

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

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

...:EXXX 起動に失敗し、ruby インタプリタに制御が戻った場合に発生します。

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

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

$ ruby a.rb
実行前
...

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

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

...:EXXX 起動に失敗し、ruby インタプリタに制御が戻った場合に発生します。

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

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

$ ruby a.rb
実行前
...

絞り込み条件を変える

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

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

...スクリプタなど)引き継ぎます。
Hash を options として渡すことで、この挙動を変更できます。
詳しくは Kernel.#spawn を参照してください。

=== 引数の解釈

この形式で呼び出した場合、空白や shell のメタキャラクタも
そのまま...
...替えて以下を実行
$ ps aux|grep sleep
xxxx 32754 0.0 0.0 2580 468 pts/3 S+ 22:01 0:00 mysleep 600
xxxx 32761 0.0 0.0 2824 792 pts/6 S+ 22:01 0:00 grep sleep

@see Kernel.#system,Kernel.#`,Kernel.#spawn,Kernel.#fork,IO.popen,IO.pipe,Kernel.#open,exec(3)...

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

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

...スクリプタなど)引き継ぎます。
Hash を options として渡すことで、この挙動を変更できます。
詳しくは Kernel.#spawn を参照してください。

=== 引数の解釈

この形式で呼び出した場合、空白や shell のメタキャラクタも
そのまま...
...替えて以下を実行
$ ps aux|grep sleep
xxxx 32754 0.0 0.0 2580 468 pts/3 S+ 22:01 0:00 mysleep 600
xxxx 32761 0.0 0.0 2824 792 pts/6 S+ 22:01 0:00 grep sleep

@see Kernel.#system,Kernel.#`,Kernel.#spawn,Kernel.#fork,IO.popen,IO.pipe,Kernel.#open,exec(3)...