AnyEvent::Subprocess::Easy - wrappers around AnyEvent::Subprocess to save typing
in simple cases
use AnyEvent::Subprocess::Easy qw(qx_nonblock);
my $date = qx_nonblock('date')->recv;
I was writing some examples and noticed some patterns that came up again and
again, so I converted them to functions. These are opaque and
non-customizeable, but might be helpful if you want to do something common
without a lot of typing. If they don't work quite the way you want, it is not
too hard to use AnyEvent::Subprocess directly.
We use Sub::Exporter here, so you can customize the exports as appropriate.
"qx_nonblock" works like qx, except that it
returns a condvar that you "recv" on to get
the captured stdout. The "recv" will throw
an exception if the process you run doesn't exit cleanly.
You can pass in one string for the shell to interpret (like
"exec"), or you can pass in a list of
arguments (passed directly to "exec"). You
can also pass in a coderef if you like; it will be called with an undefined
number of arguments in the child process (and should
"exit 0" if it is successful).
Not enough "easy" stuff here yet. Please contribute your common
patterns!
Jonathan Rockway <jrockway@cpan.org>
This software is copyright (c) 2011 by Jonathan Rockway.
This is free software; you can redistribute it and/or modify it
under the same terms as the Perl 5 programming language system itself.