update..I changed to use file:copy:recursive..
here is the code which works just fine.
use File::Copy::Recursive;
use File::Find;
use strict;
my $srcdir='c:\\inetpub\\performancetesting\\output\\new\\';
my $destdir='c:\\';
File::Copy::Recursive::dircopy $srcdir, $destdir or die "Copy failed:
+$!";
as part of a project I am working on I need to copy part of a directory tree to the root, this is to move files being processed by something else so that I can load them into a db. unfortunately its not working out yet, all i get is my warning can't open the file yet for each folder what stupid mistake am I making this time
use File::Copy;
my $dir="c:\\inetpub\\performancetesting\\output\\new\\mlx\\";
my $dir2="c:\\";
lista_dirs($dir,$dir);
sub lista_dirs{
my ($dir,$dirname)=@_;
my (@dirs,@files);
opendir DIR, "$dir";
my @dircontent=grep {/[^\.]/} readdir(DIR);
closedir DIR;
@dirs=();
@files=();
foreach(@dircontent){
if (-d "$dir/".$_){
push @dirs,$_;
copy($dir,$dir2);
}
else {
push @files,$_ if($_=~/\.txt$/);
}
}
foreach my $d(@dirs){
lista_dirs("$dir/".$d,$d);
print $d,"\n" ;
#print $dir; prints full path?
}
}# not sure if this is going to work or not.
opendir(IN,"$dir") or die "opening directory failed:$!";
while (defined (my $file = readdir(IN)) ) {
push (my @files, $file);
foreach my $filename (@files)
{
copy ("$dir".$filename, "$dir2".$filename) or warn "Can't open the fil
+e yet $filename\n:$!";
}
}
closedir(IN);
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.