読者です 読者をやめる 読者になる 読者になる

本当は怖い情報科学

情報系大学院生の趣味&実益ブログ。

Rubyでの外部プロセス起動のメモ

Rubyで外部プロセスを起動するにはいくつか選択肢があって、場合によって使い分けるとよいらしいです。それぞれ、呼び出したプロセスから取得できる情報に違いがあります。

メソッド・モジュール名 終了ステータス 標準出力 標準入力 標準エラー
バッククオート記法 ○ ($?) × ×
Kernel.system() ○ ($?) × × ×
Kernel.exec ×*1 × × ×
open3 ×
[http://raa.ruby-lang.org/project/open4/:title=open4](非標準)
[http://popen4.rubyforge.org/:title=popen4](非標準)

*1:プロセス自体を置き換えるコマンドなので、execの呼び出しは返りません

【広告】