【发布时间】:2015-07-24 05:00:54
【问题描述】:
我在一个主目录下有几个子目录,每个子目录包含一个或两个文本文件。我需要将这些文本文件复制到另一个目录。
这是我的编码方式。但这似乎不起作用。我能做些什么?有没有直接的方法可以做到这一点?
#!/usr/bin/perl
use File::Copy;
my $directorypath;
opendir (DIR, '/d/work/abc') or die "cannot open path $!";
my @maindirectory = readdir (DIR);
closedir (DIR);
foreach my $subdirectorypath (@maindirectory)
{
$subdirectorypath = join '', '/d/work/abc', $directorypath;
chdir '$directorypath';
my @textfile = glob "*.txt";
foreach (@textfile)
{
$copiedfile = "/d/work/abcd/$_.txt."; #destination path
copy($_, $copiedfile) or die "File cannot be copied.";
}
}
【问题讨论】:
-
这里有问题吗?
-
@EricRenouf 嗨,我刚刚编辑了问题。
-
你需要编写一个递归遍历过程。否则将无法正常工作。
标签: perl copy directory-structure