excluding a subdirectory in a perl script that uploads images to an ftp site

I am dealing with a perl script that runs on a cron to ftp images from one server to another via ftp. Currently the image directories are /listings/residential    /listings/commcercial and so on... each of these directories has a subdirectory for thumbnails... as the script stands now, it ftps all the images and as a result the thumbnails end up overwriting the full size images... Can i easily add to the following code to exclude any subdirectory with the name 'thumb' or thumbnails?
here's the ftp portion of the code:


open(IMG, "< $filelist") or die "$!";
while($file=<IMG>) {
	chomp $file;
	$rs = $ftp->put($file);
	if($rs ne ''){
		&log(sprintf("FTP PUT FILE: %s", $rs));
	}else{
	 	&log(sprintf("FTP PUT ERROR: %s", $file));
	}
}
close(IMG);

Open in new window

taagangelAsked:
Who is Participating?
 
hieloConnect With a Mentor Commented:
try:

open(IMG, "< $filelist") or die "$!";
while($file=) {
      chomp $file;
    if( $file !~ m/thumb/i)
    {
      $rs = $ftp->put($file);
      if($rs ne ''){
            &log(sprintf("FTP PUT FILE: %s", $rs));
      }else{
             &log(sprintf("FTP PUT ERROR: %s", $file));
      }
     }
}
close(IMG);
0
 
Adam314Commented:

open(IMG, "< $filelist") or die "$!";
while($file=<IMG>) {
        chomp $file;
        next if $file =~ /^thumb(nails)?$/i;
        $rs = $ftp->put($file);
        if($rs ne ''){
                &log(sprintf("FTP PUT FILE: %s", $rs));
        }else{
                &log(sprintf("FTP PUT ERROR: %s", $file));
        }
}
close(IMG);

Open in new window

0
 
taagangelAuthor Commented:
Thanks much!!!!! That did the trick! :-)
0
 
taagangelAuthor Commented:
Thank you! Another person posted a very similar answer before you did and that one worked. Wish I could give you some points though as yours looks like it would have worked as well.
0
 
Adam314Commented:
No problem about the points - but you can split the points among multiple correct answers.
0
All Courses

From novice to tech pro — start learning today.