URLS: | http://raa.ruby-lang.org/project/session/ http://www.codeforpeople.com/lib/ruby/session/ NAME: | Session ::Sh ::Bash ::Shell ::IDL SYNOPSIS: | Session::* offers a set of classes built upon Open3::popen3 for driving external progams via pipes. It offers a significant abstraction over Open3::popen in that the stdout/stderr of each command sent can be deliniated: open3: i.o,e = Open3::popen3 '/bin/sh' i.puts 'ls' i.puts 'echo 42' now, how to determine the boundry between the output from 'ls' and 'echo'? the only (simple) way is start a process for each command i.o,e = Open3::popen3 '/bin/sh' i.puts 'ls' i.close stdout, stderr = o.read, e.read i.o,e = Open3::popen3 '/bin/sh' i.puts 'echo 42' i.close stdout, stderr = o.read, e.read session: sh =