in reply to Shell Commands executed in perl script

rinceWind answered your question well, but
print $sh->ls("-l ./logs/ |grep -v "^d" |grep -v file1 | awk 'NR>1 { p +rint \$9}'

Gah..! really? fork 4 processes to get a list of files excluding a pattern?

{ my $dir = './logs'; opendir my $dh, $dir or die "Can't opendir '$dir': $!\n"; my @files = grep { ! -d "$dir/$_" and ! /file1/ } readdir $dh; print "$_\n" for @files; } __END__

To me, integrating doesn't mean copy & paste, but also throwing out cruft and rewrite. The shell command is poor to start with - useless use of grep... then your $9 in the awk command isn't portable, there are different date formats around, e.g. 2007-05-22.

--shmem

_($_=" "x(1<<5)."?\n".q·/)Oo.  G°\        /
                              /\_¯/(q    /
----------------------------  \__(m.====·.(_("always off the crowd"))."·
");sub _{s./.($e="'Itrs `mnsgdq Gdbj O`qkdq")=~y/"-y/#-z/;$e.e && print}