Simopoulos wrote:
> 
> Hi All,

Hello,

> I'm a newbie just starting out learning Perl.
> My problem is I have a bunch of files that are (.doc) files, and I want to rename
> the files (.data).
> I also want move then to another directory, but I don't really want to destroy or
> change the old ones (.doc).
> What I've done so far doesn't work the way I want it to.  It is:
> 
> #! /usr/bin/perl -w
> opendir(DOCUMENTS,".") || die "Can't open directory documents!";
> @filenames = readdir(DOCUMENTS);
> closedir(DOCUMENTS);
> foreach $filename(@filenames) {
>    if ($filename =~ m/\.doc$/i) {
>        rename($filename, "/home/marsie/data/$filename.dat") ||
>                           die "Can't move files";
>    } else {
>        print "Not a .doc file!\n";
>    }
> }
> 
> I would appreciate any help anyone can offer.
> Peace,
> Marsie


#!/usr/bin/perl -w
use strict;
use File::Copy;

opendir DOCUMENTS, '.' or die "Can't open directory documents: $!";
my @filenames = grep /\.doc$/i, readdir DOCUMENTS;
closedir DOCUMENTS;

foreach my $filename ( @filenames ) {
    ( my $new = $filename ) =~ s/\.doc$//i;
    copy( $filename, "/home/marsie/data/$new.dat" )
        or warn "Can't copy $filename: $!";
    }

__END__



John
-- 
use Perl;
program
fulfillment

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

Reply via email to