ライブラリ
- ビルトイン (360)
- etc (264)
- open3 (108)
- pathname (12)
- shell (6)
-
shell
/ command-processor (6) -
shell
/ filter (6) - socket (24)
クラス
- File (12)
-
File
:: Stat (12) - IO (180)
- Pathname (12)
-
RDoc
:: Options (24) - Shell (6)
-
Shell
:: CommandProcessor (6) -
Shell
:: Filter (6) - Socket (12)
モジュール
- Etc (252)
- FileTest (12)
- Kernel (120)
- Open3 (108)
-
Socket
:: Constants (12)
キーワード
- EPIPE (12)
- ESPIPE (12)
- ESTRPIPE (12)
-
PC
_ 2 _ SYMLINKS (12) -
PC
_ ALLOC _ SIZE _ MIN (12) -
PC
_ ASYNC _ IO (12) -
PC
_ CHOWN _ RESTRICTED (12) -
PC
_ FILESIZEBITS (12) -
PC
_ LINK _ MAX (12) -
PC
_ MAX _ CANON (12) -
PC
_ MAX _ INPUT (12) -
PC
_ NAME _ MAX (12) -
PC
_ NO _ TRUNC (12) -
PC
_ PATH _ MAX (12) -
PC
_ PIPE _ BUF (12) -
PC
_ PRIO _ IO (12) -
PC
_ REC _ INCR _ XFER _ SIZE (12) -
PC
_ REC _ MAX _ XFER _ SIZE (12) -
PC
_ REC _ MIN _ XFER _ SIZE (12) -
PC
_ REC _ XFER _ ALIGN (12) -
PC
_ SYMLINK _ MAX (12) -
PC
_ SYNC _ IO (12) -
PC
_ TIMESTAMP _ RESOLUTION (12) -
PC
_ VDISABLE (12) -
SO
_ NOSIGPIPE (24) - advise (12)
- eof (12)
- eof? (12)
- exec (48)
- fork (24)
- pathconf (12)
- pid (12)
- pipe= (12)
- pipe? (66)
-
pipe
_ open (12) - pipeline (12)
-
pipeline
_ r (24) -
pipeline
_ rw (24) -
pipeline
_ start (24) -
pipeline
_ w (24) - rdoc (12)
- readpartial (12)
-
ruby 1
. 8 . 4 feature (12) - select (12)
- spawn (48)
検索結果
先頭5件
-
Etc
:: PC _ PATH _ MAX -> Integer (3101.0) -
IO#pathconf の引数に指定します。
...
IO#pathconf の引数に指定します。
詳細は fpathconf(3) を参照してください。... -
ruby 1
. 8 . 4 feature (162.0) -
ruby 1.8.4 feature ruby 1.8.4 での ruby 1.8.3 からの変更点です。
...更
# * [api]: 拡張ライブラリ API
# * [lib]: ライブラリ
* レベル
* [bug]: バグ修正
* [new]: 追加されたクラス/メソッドなど
* [compat]: 変更されたクラス/メソッドなど
* 互換性のある変更
* only backward-compatibility
* 影......boundMethod#bind [bug]>))
* ((<ruby 1.8.4 feature/set_trace_func [bug]>))
* ((<ruby 1.8.4 feature/set_trace_func [change]>))
* ((<ruby 1.8.4 feature/printf [bug]>))
* ((<ruby 1.8.4 feature/Hash [bug]>))
* ((<ruby 1.8.4 feature/test [bug]>))
* ((<ruby 1.8.4 feature/File.identical? [new]>)....../File.basename [change]>))
* ((<ruby 1.8.4 feature/File.dirname [change]>))
* ((<ruby 1.8.4 feature/Dir.glob (Win全般) [bug]>))
* ((<ruby 1.8.4 feature/File.basename (Win全般) [change]>))
* ((<ruby 1.8.4 feature/File.dirname (Win全般) [bug]>))
* ((<ruby 1.8.4 feature/File::Stat#pipe?... -
Kernel
. # spawn(env , program , *args , options={}) -> Integer (112.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
...スのプロセスIDを返します。
env に Hash を渡すことで、exec(2) で子プロセス内で
ファイルを実行する前に環境変数を変更することができます。
Hash のキーは環境変数名文字列、Hash の値に設定する値とします。
nil とすること......で環境変数が削除(unsetenv(3))されます。
//emlist[例][ruby]{
# FOO を BAR にして BAZ を削除する
pid = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//}
親プロセスは Process.#waitpid で子プロセスの終了を待ち合わせるか
もしくは Process.#detach で子プ......pid = spawn(command, :close_others=>true) # close 3,4,5,... (default)
pid = spawn(command, :close_others=>false) # don't close 3,4,5,...
//}
これを利用して spawn を IO.popen のように使うことができます。
//emlist[][ruby]{
# similar to r = IO.popen(command)
r, w = IO.pipe
pid......pid = spawn(command, :close_others=>true) # close 3,4,5,...
pid = spawn(command, :close_others=>false) # don't close 3,4,5,... (default)
//}
これを利用して spawn を IO.popen のように使うことができます。
//emlist[][ruby]{
# similar to r = IO.popen(command)
r, w = IO.pipe
pid... -
Kernel
. # spawn(program , *args) -> Integer (112.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
...スのプロセスIDを返します。
env に Hash を渡すことで、exec(2) で子プロセス内で
ファイルを実行する前に環境変数を変更することができます。
Hash のキーは環境変数名文字列、Hash の値に設定する値とします。
nil とすること......で環境変数が削除(unsetenv(3))されます。
//emlist[例][ruby]{
# FOO を BAR にして BAZ を削除する
pid = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//}
親プロセスは Process.#waitpid で子プロセスの終了を待ち合わせるか
もしくは Process.#detach で子プ......pid = spawn(command, :close_others=>true) # close 3,4,5,... (default)
pid = spawn(command, :close_others=>false) # don't close 3,4,5,...
//}
これを利用して spawn を IO.popen のように使うことができます。
//emlist[][ruby]{
# similar to r = IO.popen(command)
r, w = IO.pipe
pid......pid = spawn(command, :close_others=>true) # close 3,4,5,...
pid = spawn(command, :close_others=>false) # don't close 3,4,5,... (default)
//}
これを利用して spawn を IO.popen のように使うことができます。
//emlist[][ruby]{
# similar to r = IO.popen(command)
r, w = IO.pipe
pid... -
Kernel
. # exec(env , program , *args , options={}) -> () (106.0) -
引数で指定されたコマンドを実行します。
...ンドを実行すると、
元々のプログラムの環境をある程度(ファイルデスクリプタなど)引き継ぎます。
Hash を options として渡すことで、この挙動を変更できます。
詳しくは Kernel.#spawn を参照してください。
=== 引数の解釈
こ......す Hash
@param options オプションパラメータ Hash
@raise ArgumentError 第一引数が配列かつ要素数が 2 でない場合に発生します。
@raise Errno::EXXX 起動に失敗し、ruby インタプリタに制御が戻った場合に発生します。
//emlist[例][ruby]{
# a.......替えて以下を実行
$ 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={}) -> () (106.0) -
引数で指定されたコマンドを実行します。
...ンドを実行すると、
元々のプログラムの環境をある程度(ファイルデスクリプタなど)引き継ぎます。
Hash を options として渡すことで、この挙動を変更できます。
詳しくは Kernel.#spawn を参照してください。
=== 引数の解釈
こ......す Hash
@param options オプションパラメータ Hash
@raise ArgumentError 第一引数が配列かつ要素数が 2 でない場合に発生します。
@raise Errno::EXXX 起動に失敗し、ruby インタプリタに制御が戻った場合に発生します。
//emlist[例][ruby]{
# a.......替えて以下を実行
$ 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
. # fork -> Integer | nil (106.0) -
fork(2) システムコールを使ってプロセスの複製を作 ります。親プロセスでは子プロセスのプロセスIDを、子プロセスでは nil を返します。ブロックを指定して呼び出した場合には、生成し た子プロセスでブロックを評価します。
...プロセスのプロセスIDを、子プロセスでは
nil を返します。ブロックを指定して呼び出した場合には、生成し
た子プロセスでブロックを評価します。
fork 前に STDOUT と STDERR を IO#flush します。
@raise NotImplementedError 実行環境......に対応していないとき発生します。
//emlist[ブロックを指定しなかった場合][ruby]{
if child_pid = fork
puts "parent process. pid: #{Process.pid}, child pid: #{child_pid}"
# => parent process. pid: 81060, child pid: 81329
# 親プロセスでの処理
# ...
#......puts "parent process. pid: #{Process.pid}, child pid: #{child_pid}"
# => parent process. pid: 79055, child pid: 79602
# 親プロセスでの処理
# ...
# 子プロセスの終了を待って終了。
Process.waitpid(child_pid)
//}
@see IO.popen,IO.pipe,Kernel.#at_exit,Kernel.#exit!, fork(2)... -
Kernel
. # fork { . . . } -> Integer | nil (106.0) -
fork(2) システムコールを使ってプロセスの複製を作 ります。親プロセスでは子プロセスのプロセスIDを、子プロセスでは nil を返します。ブロックを指定して呼び出した場合には、生成し た子プロセスでブロックを評価します。
...プロセスのプロセスIDを、子プロセスでは
nil を返します。ブロックを指定して呼び出した場合には、生成し
た子プロセスでブロックを評価します。
fork 前に STDOUT と STDERR を IO#flush します。
@raise NotImplementedError 実行環境......に対応していないとき発生します。
//emlist[ブロックを指定しなかった場合][ruby]{
if child_pid = fork
puts "parent process. pid: #{Process.pid}, child pid: #{child_pid}"
# => parent process. pid: 81060, child pid: 81329
# 親プロセスでの処理
# ...
#......puts "parent process. pid: #{Process.pid}, child pid: #{child_pid}"
# => parent process. pid: 79055, child pid: 79602
# 親プロセスでの処理
# ...
# 子プロセスの終了を待って終了。
Process.waitpid(child_pid)
//}
@see IO.popen,IO.pipe,Kernel.#at_exit,Kernel.#exit!, fork(2)... -
Kernel
. # spawn(command , options={}) -> Integer (102.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
...子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
=== 引数の解釈
この形式では command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます......ます。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash
@raise Errno::EXXX 起動に失敗し、ruby インタプリタに制御が戻った場合に発生します。
@raise Errno::EXXX コマンドが実行できなかった場合に発生し... -
Kernel
. # spawn(env , command , options={}) -> Integer (102.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
...子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
=== 引数の解釈
この形式では command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます......ます。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash
@raise Errno::EXXX 起動に失敗し、ruby インタプリタに制御が戻った場合に発生します。
@raise Errno::EXXX コマンドが実行できなかった場合に発生し...
