Chinaunix

标题: 复制文件到其他目录window,附自己十分绕的小白程序,希望大家提提意见! [打印本页]

作者: 54red    时间: 2015-09-09 17:15
标题: 复制文件到其他目录window,附自己十分绕的小白程序,希望大家提提意见!
本帖最后由 54red 于 2015-09-09 17:18 编辑

就是在windows 下把一个文件夹下的所有子文件夹里的某些文件复制到一个文件夹。
举个例子:
haha/files/
               files_1
               files_2
               files_3


                files_1/Variants/002_S33/
                                                    file1.txt
                                                     file2.txt

就是打算把haha/files/files_1/Variants/002_S33/的两个txt 复制到haha/files下面

---------------------------我是垃圾程序的分隔线-----------------

use File::Copy;
use Cwd;

my $dir = getcwd;                 #haha/files
my @dir = glob ($dir."\/*");
foreach my $file(@dir)
{   
        if (-d $file) {        
           my $cp_file=$file."\/Variants\/*\/";
           my @test = glob ( $cp_file."\/*");         
           foreach my $file_1 (@test) {
           copy($file_1,$dir) or die "Copy failed: $!";
            }
}
}

还有一个问题,这个程序在文件夹名字有空格的时候不能用,我还没解决,求帮忙!!!




作者: yybmsrs    时间: 2015-09-09 18:19
目录空格可以用File::Glob模块来解决,整个的处理流程可以用File::Find来代替




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2