是否有适用于基于 Linux 的系统的免费开源重复图像查找器?
找到完全相同的副本(基于内容,而不是文件名)对我来说就足够了,但是找到相似图像的能力当然也很棒。
我有一个包含重复(由md5sum(md5在 Mac 上))文件的文件夹,我想安排一个cron作业来删除任何找到的文件。
但是,我被困在如何做到这一点上。到目前为止我所拥有的:
md5 -r * | sort
Run Code Online (Sandbox Code Playgroud)
输出如下:
04c5d52b7acdfbecd5f3bdd8a39bf8fb gordondam_en-au11915031300_1366x768.jpg
1e88c6899920d2c192897c886e764fc2 fortbourtange_zh-cn9788197909_1366x768.jpg
266ea304b15bf4a5650f95cf385b16de nebraskasupercell_fr-fr11286079811_1366x768.jpg
324735b755c40d332213899fa545c463 grossescheidegg_en-us10868142387_1366x768.jpg
3993028fcea692328e097de50b26f540 Soyuz Spacecraft Rolled Out For Launch of One Year Crew.png
677bcd6006a305f4601bfb27699403b0 lechaustria_zh-cn7190263094_1366x768.jpg
80d03451b88ec29bff7d48f292a25ce6 ontariosunrise_en-ca10284703762_1366x768.jpg
b6d9d24531bc62d2a26244d24624c4b1 manateeday_row10617199289_1366x768.jpg
ca1486dbdb31ef6af83e5a40809ec561 Grueling Coursework.jpg
cdf26393577ac2a61b6ce85d22daed24 Star trails over Mauna Kea.jpg
dc3ad6658d8f8155c74054991910f39c smoocave_en-au10358472670_1366x768.jpg
dc3ad6658d8f8155c74054991910f39c smoocave_en-au10358472670_1366x7682.jpg
Run Code Online (Sandbox Code Playgroud)
如何根据文件的 MD5 进行处理以删除重复项?我真的不在乎我保留哪个“原创”——但我只想保留一个。
我应该以不同的方式来解决这个问题吗?
我有一个像
"aaa,aaa,aaa,bbb,bbb,ccc,bbb,ccc"
Run Code Online (Sandbox Code Playgroud)
我想从字符串中删除重复的单词然后输出就像
"aaa,bbb,ccc"
Run Code Online (Sandbox Code Playgroud)
我试过这个代码源
$ echo "zebra ant spider spider ant zebra ant" | xargs -n1 | sort -u | xargs
Run Code Online (Sandbox Code Playgroud)
它在相同的值下工作正常,但是当我给我的变量值时,它也会显示所有重复的单词。
如何删除重复值。
更新
如果用户相同,我的问题是将所有相应的值添加到一个字符串中。我有这样的数据 - >
user name | colour
AAA | red
AAA | black
BBB | red
BBB | blue
AAA | blue
AAA | red
CCC | red
CCC | red
AAA | green
AAA | red
AAA | black
BBB | red
BBB | blue
AAA | blue
AAA | red
CCC | …Run Code Online (Sandbox Code Playgroud) 我正在运行 Mac OSX 并尝试使用命令行来查找我拥有的同名文件的数量。
我尝试使用以下命令:
find ~ -type f -name "*" -print | basename | sort | uniq -d > duplicate_files
Run Code Online (Sandbox Code Playgroud)
它不起作用!当我执行以下操作时:
find ~ -type f -name "*" -print > duplicate_files
Run Code Online (Sandbox Code Playgroud)
然后duplicate_files 确实包含我所有文件的路径。所以我认为问题在于basename- 它不接受标准输入。然后我尝试了以下方法:
basename $(find ~ -type f -name "*" -print) > duplicate_files
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用。在互联网上搜索似乎并没有带来多少乐趣。任何想法最受欢迎。
我有一个庞大的音乐库(都是 mp3),但我的一些音乐几乎相同,但是:
有没有办法找到这些重复项?如前所述,它们没有相同的大小、名称或 SHA1 哈希。
某些期刊为每次下载生成不同的 PDF。例如,APS在 PDF 中存储时间和 IP 地址。
或者有一个带有超链接的纸质版本和一个带有文本参考的版本。
如何通过使用开源软件在 linux 系统上找到 90% 相同内容的论文重复下载?
我一直在考虑将 PDF 文件转换为临时目录中的纯文本pdf2txt。然后我可以过滤所有diff a b结果超过 x 行的文件名。但这一点都不优雅,并且会在扫描出版物时失败。期刊通常不提供旧出版物的 OCR 文本。
我也尝试compare过 ImageMagick 套件,但我无法使用此工具处理多页 PDF 文件。
diffpdf 2.1.1在两个文件的 GUI 中做得很好,但我不知道如何将它应用于许多文件,并且最新版本在任何开源许可证下都不可用。
我的硬盘上存储了大量音乐收藏;浏览了一下,发现有些相册目录下有很多重复的文件。通常,副本存在于同一目录中的原始文件旁边。
通常格式为filename.mp3,重复文件为filename 1.mp3。有时可能会有多个重复文件,我不知道文件夹之间是否存在重复文件(例如专辑目录的重复文件)。
有什么方法可以扫描这些重复文件(例如,通过比较文件大小,或比较整个文件以检查它们是否相同),查看结果,然后删除重复文件?名称较长或修改/创建日期较近的名称通常是删除的目标。
有没有可以在 Linux 上执行此操作的程序?
这个问题/答案有一些很好的解决方案来删除文件中的相同行,但在我的情况下不起作用,因为否则重复的行有一个时间戳。
是否可以告诉 awk 在确定重复项时忽略一行的前 26 个字符?
例子:
[Fri Oct 31 20:27:05 2014] The Brown Cow Jumped Over The Moon
[Fri Oct 31 20:27:10 2014] The Brown Cow Jumped Over The Moon
[Fri Oct 31 20:27:13 2014] The Brown Cow Jumped Over The Moon
[Fri Oct 31 20:27:16 2014] The Brown Cow Jumped Over The Moon
[Fri Oct 31 20:27:21 2014] The Brown Cow Jumped Over The Moon
[Fri Oct 31 20:27:22 2014] The Brown Cow Jumped Over The …Run Code Online (Sandbox Code Playgroud) 维基百科关于 Btrfs 的文章引用的网页声称(强调我的)
\n\n\n\n\n[Btrfs] 引用链接与硬链接具有相同的用途,但空间效率更高。
\n
我认为相反的情况是正确的\xe2\x80\x94,硬链接更节省空间,因为硬链接仅创建指向现有 inode 的目录条目,而引用链接创建目录条目、inode 和文件元数据。
\n\n此外,如果数据内联在元数据中,则引用链接会复制文件数据,而硬链接则不会发生这种情况,因为文件没有新的元数据。
\n\n我对么?
\n我有一个由 创建的目录树rsnapshot,其中包含相同目录结构的多个快照,所有相同的文件都被硬链接替换。
我想删除所有这些硬链接重复项,并只保留每个文件的一个副本(这样我以后就可以将所有文件移动到一个排序的存档中,而不必两次接触相同的文件)。
有没有工具可以做到这一点?
到目前为止,我只找到了可以找到重复项并创建硬链接来替换它们的工具……
我想我可以列出所有文件及其 inode 编号并自己实现重复数据删除和删除,但我不想在这里重新发明轮子。