亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Perl > 正文

fdupe 查找重復文件的Perl腳本代碼

2020-10-31 15:17:01
字體:
來源:轉載
供稿:網友
圖:



復制代碼 代碼如下:

#!/usr/bin/perl
#
# fdupe tool - finding duplicate files
#
# $Id: fdupe,v 1.7 2011/10/14 20:11:21 root Exp root $
#
# Source code Copyright (c) 1998,2011 Bernhard Schneider.
# May be used only for non-commercial purposes with
# appropriate acknowledgement of copyright.
#
# FILE :        fdupe
# DESCRIPTION : script finds duplicate Files.
# AUTHOR:       Bernhard Schneider <bernhard@neaptide.org>
# hints, crrections & ideas are welcome
#
# usage: fdupe.pl <path> <path> ...
#        find / -xdev | fdupe.pl
#
# how to select and remove duplicates:
#   redirect output to >file, edit the file and mark lines you
#   wish to move/delete with a preceding dash (-)
#   Use following script to delete marked files:
#   #!/usr/bin/perl -n
#   chomp; unlink if s/^-//;
#
# history:
# 12.05.99 - goto statment replaced with next
# 14.05.99 - minor changes
# 18.05.99 - removed confusing 'for $y'
#            included hash-search
# 20.05.99 - minor changes
# 02.03.00 - some functions rewritten, optimized for speed
# 10.01.01 - hint-fix by Ozzie |ozric at kyuzz.org|
# 05.03.02 - fixed hangups by reading block/char-Devices
# 08.09.11 - skips checking of hard links
# 14.10.11 - accept file names from stdin
#
#use strict; # uncomment for debugging

$|=1;
local (*F1,*F2); my %farray = (); my $statF1;

# ------------------------------
# traverse directories
sub scan ($) {
    my ($dir) = $_[0];
    opendir (DIR, $dir) or die "($dir) $!:$@";
    map {
          (-d) ? scan ($_) : push @{$farray{-s $_}},$_
             unless (-l or -S  or -p or -c or -b);
    } map "$dir/$_", grep !/^/./.?$/, readdir (DIR); closedir (DIR);
}

# ------------------------------
# get chunk of bytes from a file
sub getchunk ($$) {
  my ($fsize,$pfname) = @_;
  my $chunksize = 32;
  my ($nread,$buff);

  return undef unless open(F1,$$pfname);

  $statF1 = [(stat  F1)[3,1]];
  binmode F1;
  $nread = read (F1,$buff,$chunksize);
  ($nread == $chunksize || $nread == $fsize) ? "$buff" : undef;

# ------------------------------
# compare two files
sub mycmp ($) {
  my ($fptr) = $_[0];
  my ($buffa, $buffb);
  my ($nread1,$nread2);
  my $statF2;
  my ($buffsize) = 16*1024;

  return -1 unless (open(F2,"<$$fptr"));

  $statF2 = [(stat  F2)[3,1]];

  return 0
   if ($statF2->[0] > 1 && $statF1->[1] == $statF2->[1]);

  binmode F2;
  seek (F1,0,0);

  do {  $nread1 = read (F1,$buffa,$buffsize);
     $nread2 = read (F2,$buffb,$buffsize);

     if (($nread1 != $nread2) || ($buffa cmp $buffb)) {
         return -1;
        }
  } while ($nread1);

  return 0;
}

# ------------------------------

print "collecting files and sizes .../n";

if (-t STDIN) {
 $ARGV[0] = '.' unless $ARGV[0]; # use wd if no arguments given
 map scan $_, @ARGV;
} else { 
 while (<STDIN>)  {
  s亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

日韩第一页在线| 久久久久女教师免费一区| 亚洲tv在线观看| 国产亚洲视频在线观看| 成人激情视频在线播放| 亚洲自拍偷拍色图| 亚洲缚视频在线观看| 成人激情在线播放| 成人中文字幕+乱码+中文字幕| 国产日韩欧美视频| 91精品综合视频| 久久99青青精品免费观看| 亚洲精品一区久久久久久| 久久久久国产精品www| 中文字幕亚洲精品| 成人午夜黄色影院| 日韩最新免费不卡| 亚洲综合视频1区| 国产欧美一区二区三区久久人妖| 茄子视频成人在线| 精品偷拍一区二区三区在线看| 久久久久亚洲精品成人网小说| 久久久国产在线视频| 亚洲a中文字幕| 久久在精品线影院精品国产| 国产精品视频久久久久| 日韩精品视频在线观看免费| 欧美午夜xxx| 久久夜精品香蕉| 日韩中文字幕在线观看| 亚洲sss综合天堂久久| 欧美福利视频在线观看| 国产日韩欧美日韩| 97精品国产97久久久久久春色| 欧美电影电视剧在线观看| 日韩成人在线观看| 中文字幕亚洲欧美| 久久97久久97精品免视看| 欧美性黄网官网| 欧美午夜片在线免费观看| 亚洲色图国产精品| 国产不卡精品视男人的天堂| 亚洲国产日韩欧美综合久久| 欧美日韩亚洲精品内裤| 这里只有精品在线观看| 欧美亚洲国产另类| 国产精品狠色婷| 亚洲第一区第二区| 欧美理论片在线观看| 一区二区成人av| 成人在线中文字幕| 欧美午夜美女看片| 国产亚洲精品成人av久久ww| 欧美电影免费观看电视剧大全| 456亚洲影院| 日韩hd视频在线观看| 欧美激情区在线播放| 国产免费久久av| 热re99久久精品国产66热| 色综合久久中文字幕综合网小说| 色偷偷av一区二区三区乱| 久久最新资源网| 中文字幕亚洲自拍| 国产精品jvid在线观看蜜臀| 亚洲国产精品va在线看黑人动漫| 国产精品久久久久久久久久久久久久| 精品欧美一区二区三区| 亚洲欧洲av一区二区| 亚洲热线99精品视频| 66m—66摸成人免费视频| 亚洲第一区中文99精品| 久久精品视频在线| 久久人人爽人人爽人人片av高清| 亚洲色图av在线| 久久网福利资源网站| 国语自产偷拍精品视频偷| 成人欧美一区二区三区在线湿哒哒| 日本不卡免费高清视频| 国产精品香蕉av| 国产精品福利网站| 欧美视频专区一二在线观看| 日韩精品一二三四区| 日韩av123| 久久香蕉国产线看观看网| 国产精品久久久久999| 久久久久久成人| 日韩在线免费高清视频| 亚洲精品在线观看www| 97视频网站入口| 欧美激情中文字幕乱码免费| 97国产成人精品视频| 亚洲欧美日韩天堂一区二区| 国模视频一区二区| 在线观看国产欧美| 日韩免费av片在线观看| 成人精品视频久久久久| 久久伊人精品一区二区三区| 国产区精品在线观看| 亚洲影院色无极综合| 国产中文日韩欧美| 国产91在线播放精品91| 中文字幕亚洲二区| 欧美激情奇米色| 国产精品久久97| 日韩有码在线视频| 国内精品久久久久久久久| 亚洲电影在线观看| 欧美在线观看网站| 在线视频国产日韩| 亚洲999一在线观看www| 成人黄色免费片| 欧美综合在线第二页| 欧美极品xxxx| 精品成人在线视频| 欧美精品在线播放| 国产一区二区在线播放| 日本一本a高清免费不卡| 国产精品日韩久久久久| 亚洲精选中文字幕| 成人免费视频xnxx.com| 欧美成人午夜免费视在线看片| 久久视频在线看| 日本精品中文字幕| 国产盗摄xxxx视频xxx69| 久久久免费精品视频| 久久久精品国产一区二区| 亚洲视频999| 欧美成人免费视频| 欧美乱大交xxxxx| 亚洲丝袜一区在线| 亚洲电影免费观看高清| 欧美在线视频一区二区| 国产va免费精品高清在线| 成人精品一区二区三区| 久久国产一区二区三区| 久久青草福利网站| 欧美激情精品久久久久久变态| 亚洲影院在线看| 久久综合伊人77777尤物| 91精品国产色综合久久不卡98口| 欧美日韩xxx| 亚洲午夜精品视频| 精品久久香蕉国产线看观看亚洲| 午夜精品99久久免费| 国产精品视频成人| 久久久免费观看| 国产丝袜精品第一页| 成人精品一区二区三区电影黑人| 成人国产精品久久久| 日韩的一区二区| 久久国产精品久久久久久| 亚洲天堂av在线免费观看| 精品国产视频在线| 不卡av在线播放| 精品国产乱码久久久久久虫虫漫画| 欧美日韩中文在线| 高清亚洲成在人网站天堂| 亚洲精品午夜精品| 蜜臀久久99精品久久久无需会员| 6080yy精品一区二区三区| 精品久久久久久久大神国产| 麻豆国产va免费精品高清在线| 欧美精品videosex牲欧美| 国产欧美日韩免费看aⅴ视频|