Proc::Hevy

A heavyweight module for running processes synchronously
Download

Proc::Hevy Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Perl Artistic License
  • Price:
  • FREE
  • Publisher Name:
  • Jason Hord
  • Publisher web site:
  • http://search.cpan.org/~pravus/

Proc::Hevy Tags


Proc::Hevy Description

A heavyweight module for running processes synchronously Proc::Hevy is a simplistic Perl module for spawning child processes in a synchronous manner. It provides a simple interface for passing data to a process's STDIN while also offering several methods for buffering STDOUT and STDERR output.SYNOPSIS use Proc::Hevy; { my $status = Proc::Hevy->exec( command => 'cat', stdin => "Useless use of cat\n", stdout => \my $stdout, stderr => \my $stderr, ); } { my $status => Proc::Hevy->exec( command => , stdin => , stdout => my $stdout = , stderr => my $stderr = , ); } { my @stdin = qw( foo bar baz ); my ( @stdout, @stderr ); my $status => Proc::Hevy->exec( command => sub { while( ) { my ( $fh, $prefix ) = $. % 2 == 0 ? ( \*STDOUT, 'even' ) : ( \*STDERR, 'odd' ) ; print {$fh} "$prefix :: $_"; } }, stdin => sub { shift @stdin }, stdout => sub { push @stdout, $_ }, stderr => sub { push @stderr, $_ }, ); } { sub cat { my ( @files ) = @_; exec cat => '--', @files } my $status => Proc::Hevy->exec( command => , stdin => \*STDIN, stdout => \*STDERR, stderr => \*STDOUT, ); } { # really useless use of cat my $status = Proc::Hevy->exec( command => 'cat /dev/null 2>/dev/null', ); } Requirements: · Perl


Proc::Hevy Related Software