I have a directory of files that I want to move to another directory. 
(eg. ALLY20030111W.eps
     TEST W20030122
     HELP WANTED20030901WW.eps
     GIRL WATCH BIRD 20030101
etc..)

I want to be able to parse the filename and replace the date portion 
with any date (eg $1="ALLY" $2="20030111" $3="W" $4=".eps")
Then I want to make $2="20030925" and if $3 is empty then I assign ".eps"
to $3 or if $4 is empty then assign ".eps"


How do I do this?

#!/usr/bin/perl
# move_file.plx
use warnings;
use strict;

$source = "/path/to/source/";
$destination = "/path/to/destination/";
$query = "([A-Za-z]+)(\s*?)([0-9]*)(\s*?)([A-Za-z]*)([eps])"
opendir DH, $source or die "Couldn't open the current directory: 
$source"; while ($_ = readdir(DH)) {
   next if $_ eq "." or $_ eq "..";

   if (/$query/) {
      print "Copying $_ ...\n";
      rename $source$_, $destination$_;
      print "file copied successfully.\n";
   }
}
 
What's wrong with my code. Am I overlooking something?

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to