find -not -empty -type f -printf "%s\n" | sort -rn | uniq -d | xargs -I{} -n1 find -type f -size {}c -print0 | xargs - md5sum | sort | uniq -w32 --all-repeated=separate

【1】find -not -empty -type f -printf “%s\n” :find是查找命令;-not -empty是要寻找非空文件;-type f是指寻找常规文件;-printf “%s\n”表示的是文件的大小,单位为bytes
【2】sort -rn:这条命令就是按文件大小进行反向排序
【3】uniq -d:uniq是把重复的只输出一次,而-d指只输出重复的部分(如9出现了5次,那么就输出1个9,而2只出现了1次,并非重复出现的数字,故不输出)
【4】xargs -I{} -n1 find -type f -size {}c -print0:这一部分分两部分看,第一部分是xargs -I{} -n1,xargs命令将之前的结果转化为参数,供后面的find调用,其中-I{}是指把参数写成{},而-n1是指将之前的结果一个一个输入给下一个命令(-n8就是8个8个输入给下一句,不写-n就是把之前的结果一股脑的给下一句)。后半部分是find -type f -size {}c -print0,find指令我们前面见过,-size{}是指找出大小为{}bytes的文件,而-print0则是为了防止文件名里带空格而写的参数。

【5】
xargs -0 md5sum:xargs是将前面的结果转化为输入,那么这个-0表示读取参数的时候以null为分隔符读取,这也不难理解,毕竟null的二进制表示就是00。后面的md5sum是指计算输入的md5值。
【6】uniq -w32 –all-repeated=separate 最后这里表示对MD5的前32个字节进行对比,以筛选出重复文件

最新文章

  1. 临时解决系统中大量的TIME_WAIT连接
  2. FPGA Verilog HDL 系列实例--------步进电机驱动控制
  3. Oracle数据库语句大全
  4. windows直接安装
  5. shell 实例脚本
  6. CGI原理解析系列之中的一个----CGI怎样获取WEBserver数据
  7. Python学习笔记:概要
  8. Oracle-Linux安装配置python3.6环境
  9. [日常]nginx与网络事件模型
  10. Codeforces 932G Palindrome Partition 回文树+DP
  11. MySQL Workbench的安全更新模式
  12. 拓扑排序 Topological Sort
  13. iOS-----使用NSURLConnection
  14. 简单ssh建立 (paramiko)
  15. python中string格式化
  16. HttpWebRequest类与HttpRequest类的区别
  17. 2013ACM-ICPC杭州赛区全国邀请赛——Random Walk
  18. oracle--dump->buffer cache (dump 深入实践一)
  19. 将下载到本地的JAR包手动添加到Maven仓库(转)
  20. MSSQL 基础知识001

热门文章

  1. deque & list
  2. zabbix3.4--监控TCP十一种状态
  3. 安装 texlive
  4. [学习笔记]连通分量与Tarjan算法
  5. python运算符的优先级顺序
  6. FactoryBean 和 BeanFactory
  7. vue项目post、put、delete、get向java后端传数组
  8. POJ-2528 Mayor's posters(线段树区间更新+离散化)
  9. 29)PHP,自动加载类
  10. appium自动化的工作原理(1)