【发布时间】:2014-05-28 19:25:00
【问题描述】:
我正在尝试编写一个程序来使用 perl 在多个驱动器中查找重复的文件名。这是我的脚本,但它提供了错误的信息。
#!/usr/bin/perl
use File::Find;
@filename;
@path;
$count;
open my $out, '>', 'output.txt' or die $!;
my $file = "E:";
find( \&edit, "$file" );
sub edit() {
$count++;
push( @filename, $_ );
push( @path, $File::Find::name );
}
print "Processing.";
for ( my $i = 0 ; $i < $count ; $i++ ) {
for ( my $j = $i + 1 ; $j < $count ; $j++ ) {
if ( $filename[$i] =~ /\Q$filename[$j]\E/ ) {
print $out("$filename[$i] = $filename[$j]\n");
print ".";
}
}
}
【问题讨论】:
-
是的,但我只提到一个例子。
标签: perl perl-module