Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env perl
- use v5.20;
- use strict;
- use warnings;
- use IO::Async::Process;
- use IO::Async::Loop;
- my $loop = IO::Async::Loop->new;
- my $mdb_memstat = IO::Async::Process->new(
- command => [ "/bin/mdb", "-k" ],
- stdin => { via => "pipe_write" },
- stdout => { via => "pipe_write" },
- on_finish => sub {
- say "mdb exited";
- $loop->stop;
- },
- );
- $mdb_memstat->stdout->configure(
- on_read => sub {
- my ( $stream, $buffref ) = @_;
- say "mdb data available";
- while ( $$buffref =~ s/^(.+)\n\>\s//smx ) {
- say "Got a prompt after:\n$1";
- }
- $mdb_memstat->stdin->write('$q' . "\n");
- return 0;
- },
- );
- $loop->add( $vmstat );
- $loop->add( $mdb_memstat );
- $loop->run;
Advertisement
Add Comment
Please, Sign In to add comment