| Module Info
| Add a review of IPC-Run
The core Perl documentation for IPC::Open3 mentions this module as a better alternative to IPC, specifically with the inherent deadlock issues that prevent reliable use of IPC::Open3. This module is a gem when you need IPC in production applications where potential lockups would otherwise be a very serious problem. I'm so glad we have this alternative to IPC::Open3. IPC::Run works very easily just following the examples right out of the synopsis in its documentation.
I was looking for a module that could get the output of a particular command. In my case, I needed the error output. For a quick and easy replacement to system() or using qx() the command:
run \@args, \$in, \$out, \$err or die "Cannot run command because of: $?";
Works wonderfully. Afterwards, you can dig the rest of the documentation to get more control on command output and processes.
Very powerful module, once you go through the documentation and understand how it works.
Worth having a look at if you are using Open3, system or qx.
The module documentation is excellent. Maybe one of the best documented module on CPAN. I am jealous.
Timers, redirection and filters make controlling an external process straightforward.
Best way to interactively read and write to background processes.
In words of the author of IPC::Run
> I would personally recommend IPC::Cmd rather than IPC::Run right now.
> It seems more stable and well-supported.
> It's not obsolete -- still works for many people, even with test
> failures -- but IPC::Cmd seems to be more actively maintained.
It works well and is easy to use but I do not like its interface.