21:00RubyでOpen3モジュールを使って外部コマンドやプログラムを実行する方法についてまとめました。Open3の概要Open3はRubyに標準でインストールされているモジュールです。標準エラーにパイプをつなぎます。そのコマンドやプログラムに入力を与えたり、そのの結果を取得できます。使い方Linuxで日付を取得するdateコマンドを実行してみます。0>最初にopen3をrequireする必要があります。実際にコマンドを実行するのは、Open3.capture3メソッドです。このメソッドの引数に実行したいコマンドを文字列として渡します。s)を用意して代入しています。oは標準出力、eは標準エラー、sはプロセスの終了ステータスです。このプログラムでは、標準入力を渡してはいませんが次のプログラムのようにして渡す事ができます。0>このプログラムは、sortコマンドを使って入力として与えられた「foo」「bar」「hoge」をソートしするプログラムです。このように、標準出力はstdin_dataというキーワード引数として渡します。さいごに他にも外部のコマンドやプログラムを実行するものはあるのですが、標準入力を渡すのであればこれが一番便利だと思っています。