Capture stdout and stderr from another process

I want to

  1. Start another (lengthy) process/command from a ruby script
  2. Capture whatever that process is writing to stdout and stderr
    separately
  3. At the samt time give feedback to the console on what is happening
    (ie I don’t want all information at the end, I want it as it is
    available, maybe to a callback or so…)
  4. Do it on windows

Possible? How if so?

I’ve tried with back ticks but that only captures stdout and I get all
info at the end (violates both 2 and 3 above). I’ve also looked at
systemu but that seems to violate 3 although I do get 2 (I may be
wrong about 3 though).

Best regards,

Marcus

On Jan 30, 10:15 am, Marcus B. [email protected] wrote:

I want to

  1. Start another (lengthy) process/command from a ruby script
  2. Capture whatever that process is writing to stdout and stderr separately
  3. At the samt time give feedback to the console on what is happening
    (ie I don’t want all information at the end, I want it as it is
    available, maybe to a callback or so…)
  4. Do it on windows

Possible? How if so?

Look at Win32-Process (http://rubyforge.org/docman/view.php/85/1720/
Process.html)
or win32-open3 (http://rubyforge.org/docman/view.php/85/128/open3.txt)