in reply to Re^2: Shell script to Perl
in thread Shell script to Perl

#!/usr/bin/perl use strict; use warnings; my @MEDIA; for (qx<sudo /usr/openv/netbackup/bin/admincmd/bpimagelist -A -media - +hoursago 24>) { s/\|/ /; my ($Image) = split; for (qx<sudo /usr/openv/netbackup/bin/admincmd/nbemmcmd -listmedia - +mediaid $Image>){ next unless m/Media ID|Data Expiration/i; push @MEDIA, $_; } } if (@MEDIA){ open(FF, "|/usr/bin/mailx -s 'Daily' ishonbackup.nar\@capgemini.com" +) or die $!; for (@MEDIA){ print FF $_ . "\n"; } close FF; }

What output do you expect from bpimagelist? You might want to run this in the debugger or add print statements to verify it.

s/\|/ /; ($image) = split; could be more easily written ($image) = split /\|/; although in either case I don't think it returns the value you want. split returns a list, so if you want one of the values you need to use a subscript.

But God demonstrates His own love toward us, in that while we were yet sinners, Christ died for us. Romans 5:8 (NASB)