#!/usr/bin/perl
use strict;
use warnings;
use Data::Dumper;
use feature 'say';
my $queuecmd = 'queues.txt';
open(my $fh, '<', $queuecmd)
or die "Could not open: '".$queuecmd."' $!";
chomp(my @lines= <$fh>);
close $fh
or warn "Could not close: '".$queuecmd."' $!";
print Dumper \@lines;
my @queues = grep {s/.*count= *(\d+),.* Queue=or_event_queue\s*/$1/} @lines;
say $queues[0];
__END__
$ perl test.pl
$VAR1 = [
'Host \'server02\' connected',
'============================================================',
'Hostname: \'server02\'',
' count= 0, delivering= 0, Queue=opr_action_launch_queue',
' count= 0, delivering= 0, Queue=queue/alert_engine_notification',
' count= 3079, delivering= 0, Queue=or_event_queue',
' count= 0, delivering= 0, Queue=recipient_notification',
' count= 0, delivering= 0, Queue=queue/alert_engine_alert',
' count= 0, delivering= 0, Queue=failed_recipient_notification'
];
3079
####
#!/usr/bin/perl
use strict;
use warnings;
use Data::Dumper;
use feature 'say';
my $queuecmd = 'ls -la';
open(my $cm, '-|', $queuecmd)
or die "Could not open pipe command: '".$queuecmd."' $!";
chomp(my @lines= <$cm>);
close $cm
or die "Could not close pipe command: '".$queuecmd."' $!";
print Dumper \@lines;
my @queues = grep {s/.*count= *(\d+),.* Queue=or_event_queue\s*/$1/} @lines;
say $queues[0] if $queues[0];
__END__
$ perl test.pl
$VAR1 = [
'total 20',
'drwxr-xr-x 2 tinyos tinyos 4096 Dec 27 14:38 .',
'drwxr-xr-x 5 tinyos tinyos 4096 Dec 27 14:37 ..',
'-rw-r--r-- 1 tinyos tinyos 987 Dec 27 14:37 module.pl',
'-rw-r--r-- 1 tinyos tinyos 1109 Dec 27 14:38 test.pl',
'-rw-r--r-- 1 tinyos tinyos 1111 Dec 27 14:37 test.pl~'
];
####
#!/usr/bin/perl
use strict;
use IO::All;
use warnings;
use Data::Dumper;
use feature 'say';
my $queuecmd = 'queues.txt';
my @lines = io($queuecmd)->chomp->slurp; # Chomp as you slurp
print Dumper \@lines;
my @queues = grep {s/.*count= *(\d+),.* Queue=or_event_queue\s*/$1/} @lines;
say $queues[0];
__END__
$ perl module.pl
$VAR1 = [
'Host \'server02\' connected',
'============================================================',
'Hostname: \'server02\'',
' count= 0, delivering= 0, Queue=opr_action_launch_queue',
' count= 0, delivering= 0, Queue=queue/alert_engine_notification',
' count= 3079, delivering= 0, Queue=or_event_queue',
' count= 0, delivering= 0, Queue=recipient_notification',
' count= 0, delivering= 0, Queue=queue/alert_engine_alert',
' count= 0, delivering= 0, Queue=failed_recipient_notification'
];
3079
####
#!/usr/bin/perl
use strict;
use IO::All;
use warnings;
use Data::Dumper;
use feature 'say';
my $queuecmd = 'ls -la';
my $io = io->pipe($queuecmd)->chomp;
my @queues;
while ( defined(my $queue = $io->getline) ) {
push @queues, $queue if (index($queue, 818) != -1); # instead of grep or $queue =~ m/pattern/
}
print Dumper \@queues;
say $queues[0];
# my @queues = grep {s/.*count= *(\d+),.* Queue=or_event_queue\s*/$1/} @lines;
# say $queues[0];
__END__
$ perl module.pl
$VAR1 = [
'-rw-r--r-- 1 tinyos tinyos 818 Dec 27 14:38 test.pl'
];
-rw-r--r-- 1 tinyos tinyos 818 Dec 27 14:38 test.pl
####
#!/usr/bin/perl
use strict;
use IO::All;
use warnings;
use Data::Dumper;
use feature 'say';
my $queuecmd = 'ls -la';
my @lines = io->pipe($queuecmd)->chomp->slurp;
print Dumper \@lines;
my @queues = grep {s/.*count= *(\d+),.* Queue=or_event_queue\s*/$1/} @lines;
say $queues[0] if $queues[0];
__END__
$ perl module.pl
$VAR1 = [
'total 24',
'drwxr-xr-x 2 tinyos tinyos 4096 Dec 27 17:12 .',
'drwxr-xr-x 5 tinyos tinyos 4096 Dec 27 14:37 ..',
'-rw-r--r-- 1 tinyos tinyos 462 Dec 27 17:12 module.pl',
'-rw-r--r-- 1 tinyos tinyos 585 Dec 27 15:04 module.pl~',
'-rw-r--r-- 1 tinyos tinyos 818 Dec 27 14:38 test.pl',
'-rw-r--r-- 1 tinyos tinyos 1111 Dec 27 14:37 test.pl~'
];