linuxshell删除重复文件只保留一份

#!/bin/bash

#name:remove_one.sh

#用途:查找并删除重复文件,每个文件只保留一个样本

#将文件依据大小排序并输出

ls -lS | awk 'BEGIN {

#得到第一行total总数并丢弃,读取下一行

getline;getline;

name1=$9;size=$5;

}

{

name2=$9;

if(size==$5)

#大小一样的可能是内容相同的文件

{

#用md5进行校验和

("md5sum "name1)|getline; csum1=$1;

("md5sum "name2)|getline; csum2=$1;

#如果校验和相同则为内容相同的文集,输出名字

if( csum1==csum2 )

{

{print name1;print name2}

}

};

size=$5;name1=name2;

}' | sort -u > duplicate_files

#计算重复文件的md5sum,将重复文件中的一采样写入duplicate_sample中

cat duplicate_files|xargs -I {} md5sum {}| sort | uniq -w 32 | awk '{print $2}' | sort -u > duplicate_sample

echo Removing...

#删除在duplicate_files中列出且未被duplicate_sample列出的全部文件

comm duplicate_files duplicate_sample -2 -3|tee /dev/stderr|xargs rm

echo Removed duplicates files successfully

--------------------------------------------------------

执行:

[root@node1 tmp]# sh remove_one.sh

过滤的是当前目录下的,不处理目录,不递归处理子目录

(0)

相关推荐

  • wps怎么删除重复项 只保留一个(表格删除重复项保留一个)

    大家好,我是dk.这是Excel神器PowerQuery实战入门系列的第9篇.从这篇开始,我们开始介绍数据处理的常用技巧.删除重复项,这个很简单,在数据选项卡中,直接有一个按钮,[删除重复项],可以直 ...

  • 360云盘怎么批量删除重复文件?

    360云盘怎么批量删除重复文件?

  • 如何批量删除重复文件

    前言: 删除重复的文件并非难事,用魔方清理大师重复文件查找功能即可快速查找重复文件,按需删除. 但有些重复文件内容上确实重复或重叠,但文件名及属性上均有差异,文件名只是部分相同,文件大小也可能不同,如 ...

  • Linux系统中使用fdupes来查找并删除重复文件

    对于大多数计算机用户而言,查找并替换重复的文件是一个常见的需求.查找并移除重复文件真是一项令人不胜其烦的工作,它耗时又耗力.但如果你的机器上跑着GNU/Linux,那么查找重复文件会变得十分简单,这多 ...

  • Disk Watchman 轻松删除重复文件

    自己还不知道,用磁盘空间时才发现“磁盘空间不足”的提示,而用“磁盘清理工具”进行清理时,发现清理不出多余空间。有什么软件可以帮我们找出、删除重复文件吗?其实 Disk Watchman这款软件可以做到 ...

  • 如何电脑中的重复文件 删除重复文件的图文步骤

    最近在清理电脑的时候发现有很多文件是重复的,一个个清理太费事,那怎样能一次把它清理干净呢?今天就像大家介绍一款简单好用的重复文件清理工具。 重复文件清除大师下载地址: www./softs/66311 ...

  • 怎么删除两个表格中的重复项(怎样去掉表格中的重复值只保留一个)

    今天跟大家分享一下如何删除二维表区域的重复值.1.相信很多朋友都会删除一列数据中的重复值,那么怎么从二维表中删除重复值呢,下面就跟大家分享一下.2.首先全选表格区域3.点击下图选项(Excel工具箱, ...

  • 电脑重复文件清理软件(电脑如何删除重复文件)

    Tidy Up 是一款强大的重复文件查找和磁盘清理工具. 它是 macOS 中唯一的一款全功能重复文件清理工具, 丰富的规则条件设置以及筛选项帮助您高效清理电脑中的垃圾文件.Tidy Up 是完全重新 ...

  • word文档如何快速批量删除英文而只保留中文?

    首先打开我们需要处理的word文档,可以看到文档中包含中文跟英文,我们目的是要删除全部的英文! 接着点击word菜单栏“开始”——“编辑”——“替换”,或是直接按ctrl+f快捷键调出! 调出“查找和 ...