#!/usr/local/bin/perl -w
use strict;

sub recurse($) {
  my($path) = @_;

  ## append a trailing / if it's not there
  $path .= '/' if($path !~ /\/$/);

  ## print the directory being searched
  print $path,"\n";

  ## loop through the files contained in the directory
  for my $eachFile (glob($path.'*')) {

    ## if the file is a directory
    if( -d $eachFile) {
      ## pass the directory to the routine ( recursion )


      recurse($eachFile);
    } else {

      ## print the file ... tabbed for readability
      print "\t",$eachFile,"\n";
      print "Processing, $eachFile\n";
      system ("convert -resize 512x512! $eachFile $eachFile.512");  
#      system ("./rename 's/1024.jpg.512/512.jpg/' $eachFile");

    }
  }
}

## initial call ... $ARGV[0] is the first command line argument
recurse($ARGV[0]);


