搜索重复的照片

搜索重复的照片

我有照片,在文件夹 A 中,它们也存在于文件夹 B 和 C 中。它们的文件名相同。如何从文件夹 A 中搜索并删除它们?perl 脚本或其他东西将是理想的选择,因为我不喜欢为此任务下载软件。

答案1

尝试这个命令:

find . -type f -exec cmp -s '{}' "$destdir/{}" \; -exec echo mv -v "$destdir/{}" "$ToDelete"/ \;

如何使用?

步骤1:创建一个临时目录以将重复的文件移入其中:

ToDelete=/tmp/ToDelete; mkdir -p "$ToDelete"

第2步:设置destdir为我们要从中删除重复照片的 FolderA 目录。

destdir=/path/to/FolderA

步骤3cd 到你的第一个源目录(FolderB)并运行命令

cd /path/to/FolderB

find . -type f -exec cmp -s '{}' "$destdir/{}" \; -exec echo mv -v "$destdir/{}" "$ToDelete"/ \;

步骤4:现在 cd 到下一个源目录(FolderC)并再次运行命令

cd /path/to/FolderC

find . -type f -exec cmp -s '{}' "$destdir/{}" \; -exec echo mv -v "$destdir/{}" "$ToDelete"/ \;

好的。现在,如果您测试该命令并查看结果,则删除将echo重复的照片移动到/tmp/ToDelete目录中的命令。

参见下面的测试:

$ ls ~/FolderA    
  1.jpg  2.jpg  6.jpg  7.jpg  8.jpg

$ ls ~/FolderB    
  3.jpg  4.jpg  5.jpg  7.jpg  8.jpg  9.jpg

$ ls ~/FolderC
  6.jpg  7.jpg  8.jpg  9.jpg

$ ToDelete=/tmp/ToDelete; mkdir -p "$ToDelete"
$ ls /tmp/ToDelete/
$ destdir=~/FolderA

$ cd ~/FolderB
/FolderB$ find . -type f -exec cmp -s '{}' "$destdir/{}" \; -exec mv -v "$destdir/{}" "$ToDelete"/ \;
  ‘/home/Fischer/FolderA/./8.jpg’ -> ‘/tmp/ToDelete/8.jpg’
  removed ‘/home/Fischer/FolderA/./8.jpg’
  ‘/home/Fischer/FolderA/./7.jpg’ -> ‘/tmp/ToDelete/7.jpg’
  removed ‘/home/Fischer/FolderA/./7.jpg’

/FolderB$ cd ~/FolderC
/FolderC$ find . -type f -exec cmp -s '{}' "$destdir/{}" \; -exec mv -v "$destdir/{}" "$ToDelete"/ \;
  ‘/home/Fischer/FolderA/./6.jpg’ -> ‘/tmp/ToDelete/6.jpg’
  removed ‘/home/Fischer/FolderA/./6.jpg’

/FolderC$ ls /tmp/ToDelete/
  6.jpg  7.jpg  8.jpg

/FolderC$ ls -l ~/FolderA
  1.jpg  2.jpg

/FolderC$ C00L ;)

它是如何工作的?

当你切换到 FolderB 或 FolderC 并运行查找命令,因此您要在其中寻找任何文件(.参考当前目录),然后使用cmp 命令(用于逐字节比较两个文件)你将{}FolderB/FolderC 中的每个文件()与destdir(FolderA($destdir/{}))中的文件进行比较,如果它们相同,那么我们将该文件(从 FolderA 移动到 中的临时目录/tmp/ToDelete)与下一个mv 命令 -exec mv "$destdir/{}" "$ToDelete"/ \;

答案2

该程序查找重复图片应该按照你的要求做:

查找视觉上相似或重复的图像

该程序是一个简单的 perl 程序,可以从命令行启动 - 但也可以作为软件包使用。

答案3

你可以使用 fslint 程序

它会搜索重复项(以及其他内容)

fslint 可以在软件中心下载。打开程序时,fslint 有一个用户界面,第一个选项卡是关于查找重复项。您可以指定文件夹/文件夹。

更多信息 :用户手册 fslint

答案4

有许多重复照片查找器网上有很多可用的实用程序。有些比其他的更好,有些更快,有些易于使用,许多是免费的,有些则需要付费才能解锁全部功能。

使用最佳的重复照片查找器短语执行 Google 搜索,找出可用的照片并找到满足您需求的照片。

相关内容