#! /bin/perl
use strict;
use Cwd;
use File::Copy;
my $despath = @ARGV[0];
print "$despath\n";
my $curpath = getcwd;
print "$curpath\n";
my $dir;
print "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n";
ReplacePerlFolder($curpath, $despath);
print "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n";
sub checkIfFolder{
my $name=$_[0];
if( opendir DH,$name){
closedir DH;
print "check $name is folder!\n";
return 1;
}
print "check $name is not folder!\n";
return 0;
}
#to replace Perl Folder
sub ReplacePerlFolder{
my $src=$_[0]; #source folder
my $target=$_[1]; #target folder
mkdir $target if(not -e $target);
print " mkdir $target\n";
opendir DH,$src or die "Can't Open $src,Information:$!!\n";
my @dirs=readdir DH;
foreach my$fd(@dirs){
if(checkIfFolder($src."\/".$fd)){ #directory
print "$fd\n";
ReplacePerlFolder($src."\/".$fd,$target."\/".$fd) if($fd !~ /^(\.|\.\.)$/);
}
else{ #file,copy directly
print "Copy $src\/$fd to $target\/$fd\n";
copy($src."\/".$fd,$target."\/".$fd) or die $!;
}
}
closedir DH;
}
[perl] 复制文件夹
最新推荐文章于 2023-07-29 00:31:39 发布