![处理文本文件中的重复哈希数据 - 保留唯一行并删除重复项](https://linux22.com/image/99342/%E5%A4%84%E7%90%86%E6%96%87%E6%9C%AC%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84%E9%87%8D%E5%A4%8D%E5%93%88%E5%B8%8C%E6%95%B0%E6%8D%AE%20-%20%E4%BF%9D%E7%95%99%E5%94%AF%E4%B8%80%E8%A1%8C%E5%B9%B6%E5%88%A0%E9%99%A4%E9%87%8D%E5%A4%8D%E9%A1%B9.png)
感谢这个论坛,我能够处理包含文件名和哈希值的大型文本文件,并最终得到具有相同哈希值的文件列表,如下所示:
file_35.txt 8208ad321576b521b23b07b9ba598e5c43b03ec4172c96fdbd35a858ec205ae6
file_87.txt 8208ad321576b521b23b07b9ba598e5c43b03ec4172c96fdbd35a858ec205ae6
file_32.txt aaf6b8c4a95d0e8f191784943ba1ea5c0b4d4baab733efe8ceb8b35478b6afd2
file_58.txt aaf6b8c4a95d0e8f191784943ba1ea5c0b4d4baab733efe8ceb8b35478b6afd2
file_89.txt aaf6b8c4a95d0e8f191784943ba1ea5c0b4d4baab733efe8ceb8b35478b6afd2
我想删除包含重复哈希值的行,以便最终得到一个包含唯一哈希值的文本文件,如下所示:
file_35.txt 8208ad321576b521b23b07b9ba598e5c43b03ec4172c96fdbd35a858ec205ae6
file_32.txt aaf6b8c4a95d0e8f191784943ba1ea5c0b4d4baab733efe8ceb8b35478b6afd2
完成此操作后,我将能够创建脚本来移动和删除我想要保存和删除的文件。
答案1
如果您的文件已经排序,如何:
uniq --skip-field=1 file
否则,您可以先对文件进行排序,然后使用uniq
:
sort -k2 file | uniq --skip-field=1
输出:
file_35.txt 8208ad321576b521b23b07b9ba598e5c43b03ec4172c96fdbd35a858ec205ae6
file_32.txt aaf6b8c4a95d0e8f191784943ba1ea5c0b4d4baab733efe8ceb8b35478b6afd2