fdupes 删除指定目录下重复文件

简介:
我们怎么使用SEHLL 和命令行去删除 指定目录下的重复文件?
我们怎么删除不同目录下重复的文件?
我们将使用一个工具:fdupes ,它会查找和删除指定目录的重复文件,它通过文件的大小和MD5值进行比较 。一个字节一个字节进行对比。fdupes是一个删除指定目录下重复文件的好工具。

Install fdupes 
如果你使用debian/ubuntu linux 
# apt-get install fdupes


如果你使用 redhat/rhel/fedota/centos 你可以使用rpm包安装或yum
rpm :  http://www.cyberciti.biz/faq/rhel-centos-fedora-media-mp3-players-installtion/
yum install fdupes

fdupes 怎么工作?
在 /etc目录查找重复文件
#fdupes /etc

结果
/etc/vimrc
/etc/virc


删除不需要的文件? (用此可以查找磁盘上多余的文件--当空间不足时)
测试一下:
cp /etc/vimrc /etc/virc /tmp/test

# fdupes -d /tmp/a/
[1] /tmp/a/vimrc                                                
[2] /tmp/a/virc

Set 1 of 1, preserve files [1 - 2, all]: 1

     [+] /tmp/a/vimrc
     [-] /tmp/a/virc
(只选择删除其中一个,保留一个)
再查找一下
# fdupes /tmp/a/
查找结果为空

递归查询命令: -r
exp: fdupes -r /etc/ /data/etc/

查看重复文件的大小
# fdupes -S /etc            
1533 bytes each:                                                
/etc/vimrc
/etc/virc

更多命令见:man page fdupes

与Sed 结合 删除一些不必要的文件 :
fdupes -r -n -S /directory | sed -r “s/^/#rm \”/” | sed -r “s/$/\”/” >duplicate-files.sh


原文:http://www.cyberciti.biz/faq/linux-unix-finds-duplicate-files-in-given-directories/







你可能感兴趣的:(linux,职场,休闲,fdupes)