skyler has asked for the wisdom of the Perl Monks concerning the following question:
#! perl -w use strict; use File::Find; use File::Copy; my $infile = 'c:/doclist1.chr'; open IN, "<$infile" or die "Couldn't open $infile, $!"; while(<IN>) { chomp; my @fields = split /,/; my $path_str = $fields[6]; do { warn "Empty field 7"; next } unless $path_str; my @path = split /\\/, $path_str; # assuming you want to remove a few directories my @directory = join "\\", @path[0,5,6]; } exit; close IN; my @dir = @directory; my $srcfile; sub process_file { foreach my $dir (@dir) { if ($File::Find::dir ne $dir) { $File::Find::prune = 1; return 0; } return 0 if ($_ !~ /\.rtf$/); copy($File::Find::name, "C:\\testfiles\\$_") or die "Failed to cop +y $_: $!\n"; return 1; } find(\&process_file, $dir); }
Title edit by tye
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: copy files
by pfaut (Priest) on Feb 24, 2003 at 23:49 UTC | |
by skyler (Beadle) on Feb 25, 2003 at 00:26 UTC | |
by tachyon (Chancellor) on Feb 25, 2003 at 01:14 UTC | |
by skyler (Beadle) on Feb 25, 2003 at 02:11 UTC | |
by tachyon (Chancellor) on Feb 25, 2003 at 02:42 UTC | |
by Cabrion (Friar) on Feb 25, 2003 at 01:58 UTC | |
by skyler (Beadle) on Feb 25, 2003 at 04:18 UTC | |
|
Re: copy files
by jasonk (Parson) on Feb 25, 2003 at 00:22 UTC |