Re: [求救] 依清单,大量找图的方法?

楼主: jkchang (JK)   2021-01-09 19:43:14
我想你图片档有2-3万张,用杂凑比对会比较快,
下面是perl的写法,看看适合吗?
#!/usr/bin/perl
use File::Copy;
$PWD = `pwd`;
chomp $PWD; #删去换行符
$dirname = $PWD."/pic"; #图片档目录
$dst_dir = $PWD."/Desktop/tmp/"; #目的路径
#读取 pic 目录下图片档并存入HASH
opendir(DIR, $dirname) or die "Could not open $dirname\n";
while ($fname = readdir(DIR)) {
next if $fname eq "." or $fname eq "..";
next if $fname =~ /^\./;
$base = (split(/\./,$fname))[0]; #取出basename
@pnum = split(" ", $base);
$part_num = @pnum[$#pnum]; #取出料号
$HASH{$part_num} = $fname;
}
closedir(DIR);
#验证HASH内容
#while(($key, $value) = each %HASH) {
# print "$key => $value\n";
#}
#读取 txt 档案内容当 key 比对HASH value 是否有符合
#有就 copy 到tmp目录
$filename = "list.txt";
open FILE, $filename or die "Can't open $filename";
while (<FILE>) {
chomp;
if (exists ($HASH{$_})) {
$name = $HASH{$_};
$oldfile = $dirname."/".$name;
$newfile = $dst_dir.$name;
print "$_ pic_file:$name\n";
print "copy to:$newfile\n\n";
copy ($oldfile, $newfile);
}
}
※ 引述《htw1011 (大卫)》之铭言:
: 最近接了“熊猫”的案子,有大量找图的需求。
: 想问大家有没有方法/或是小软件/或是小技巧,
: 可以大量找图,并copy/或move到另一个资料夹的方法。
: 目前:
: A清单(.txt)有1000笔条码资料,
: 找图时也是1笔1笔复制,再贴到图库资料夹(约2~3万张图)中去找。
: 找到后,先拖到桌面的一个暂存资料夹去。
:
作者: aeolus811tw (aekt)   2021-01-09 19:50:00
杀鸡焉用牛刀,一行指令就能做的事情

Links booklink

Contact Us: admin [ a t ] ucptt.com