Denham,
As usual with Perl, one can express them self's as they wish. There really is no
beter way to do any task, unless you have specific specifications/standards. Here is
an alternative, using 'split' function.
#!PERL -w
use warnings;
use strict;
use File::Copy;
my @files=glob('C:\pie\bar\*.*');
my ($file,$debug);
for $file ( @files ){
no strict;
next if -d $file; # skip directorys
print "$file \t" if $debug;
local ($main,$ext) = split /\./,$file;
print "$main:$ext\n" if $debug
copy ("$file, "c:/code/$main.$ext");
}
hth,
Mark G.
----- Original Message -----
From: Denham Eva <[EMAIL PROTECTED]>
Date: Friday, September 10, 2004 11:09 am
Subject: Copying files from One PC to another.
> Hello Listers.
>
>
>
> Please I am a beginner.
>
> I am making tentative steps to creating a script which will keep my
> Notebook and Workstation at work in sync.
>
> My first attempt is just to copy the files from the one to local.
>
> Here is my script - it works, but I suspect there should be a
> better way
> to do this "More Perl Correct" so to speak.
>
>
>
> use warnings;
>
> use strict;
>
> use File::Copy;
>
>
>
> while(defined(my $filename=glob("//xxxxxx/code/*.*"))) {
>
> if ($filename =~ m/(\w+)\.(\w+)/){
>
> my $main = $1;
>
> my $ext = $2;
>
> copy ("$filename", "c:/code/$main.$ext");
>
> }
>
> }
>
>
>
> I would especially appreciate pointers on the regex, is there a better
> way to do this?
>
> All pointers will be appreciated.
>
> Many Thanks
>
> Denham
>
>
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>