shell脚本之删除内容相同的重复文件

Posted 普朗克·李

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本之删除内容相同的重复文件相关的知识,希望对你有一定的参考价值。

#!/bin/bash

#!删除内容相同的重复文件

 

ls -lS --time-style=long-iso | awk ‘BEGIN{

  getline;getline;

  name1=$8;size=$5

}

{

  name2=$8;

  if(size==$5)

  {

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

    "md5sum " name2 | getline;csum2=$2;

    if(csum1==csum2)

    {

      print name1;print name2

    }   

  };

  szie=$5;name1=name2;

}‘ | sort -u > duplicate_files

 

cat duplicate_files | xargs -i md5sum {} | uniq -w 32 | awk ‘{print "^"$2"$"‘}‘ | sort -u > duplicate_sample

echo removing...

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

echo removed successfully

  

以上是关于shell脚本之删除内容相同的重复文件的主要内容,如果未能解决你的问题,请参考以下文章

shell脚本取重复数据的最后一条记录

在与shell脚本相同的目录中创建文件夹[重复]

Linux 下Shell脚本删除过期文件

在Unix中使用shell脚本删除超过10天的文件[重复]

如何在Unix中为shell脚本锁定目录[重复]

shell 脚本——第七节课 三剑客之sed语句