作者jkchang (JK)
看板MAC
标题Re: [求救] 依清单,大量找图的方法?
时间Sat Jan 9 19:43:14 2021
我想你图片档有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万张图)中去找。
: 找到後,先拖到桌面的一个暂存资料夹去。
: -----
: A清单.txt 长这样子:
: 4710095324160
: 4711001302104
: 图库资料夹大约长这样:
: 泰山 纯葵花油 2L 4710095324160.jpg
: 万家香 香菇素蚝油 1L 4711001302104.jpg
: ----
: 有试玩过 Automator / Pathfinder 等软体,
: 都没有成功。所以上来问问大家,
: 有没有大量找图,并复制到指定资料夹的好方法。
: 先谢谢大家!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 203.67.167.191 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MAC/M.1610192596.A.677.html
1F:→ aeolus811tw: 杀鸡焉用牛刀,一行指令就能做的事情 01/09 19:50