华域联盟 perl 使用perl清理电脑上重复文件实现代码(续)

使用perl清理电脑上重复文件实现代码(续)

复制代码 代码如下:

#!/usr/bin/perl

use File::DirWalk;

use File::Basename;

use Data::Dumper;

use warnings;

use strict;

my $dw = new File::DirWalk;

my %files;

fileparse_set_fstype("MSWin32");

$dw->onFile(

sub {

my ($file) = @_;

push @{$files{basename($file)}->{"Paths"}},$file;

$files{basename($file)}->{"Num"} += 1;

return File::DirWalk::SUCCESS;

}

);

my $hTrace;

open $hTrace, '> Trace.txt';

select $hTrace;

$dw->walk('D:/old/perl');

my @newFiles;

while( my ($k, $v) = each %files)

{

if($v->{"Num"} > 1)

{

#print $k."\n";

#print Dumper($v);

push @newFiles,

{

"Name"=>$k,

"Paths"=>$v->{"Paths"},

"Num"=>$v->{"Num"}

}

}

}

#print Dumper(@newFiles);

@newFiles = sort {($a->{"Num"}) <=> ($b->{"Num"})} @newFiles;

print Dumper(@newFiles);

close $hTrace;


您可能感兴趣的文章:

本文由 华域联盟 原创撰写:华域联盟 » 使用perl清理电脑上重复文件实现代码(续)

转载请保留出处和原文链接:https://www.cnhackhy.com/76612.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部