Linux下正确快速删除海量文件的方法分享

 更新时间:2017年02月17日 09:56:04   投稿:daisy  
linux服务器运行久了,可能会出现海量的垃圾文件去删除,下面这篇文章就给大家分享了在Linux下正确快速删除海量文件的方法,需要的朋友可以参考借鉴,下面来一起看看吧。

前言

注意本文说的“海量”并不是指体积大,而是指数量,比如一个目录下有数百万个小文件。

最近在优化服务器时发现postfix下的maildrop目录和clientmqueue目录下发现有大量的文件,进入这些目录里使用ls命令是愚蠢的做法,而直接执行rm * , 没有任何反应,文件数量也没有减少,也就是说,在海量文件目录里直接使用rm命令进行删除是无效的。

那么正确的方法是什么呢?有两种方法可选:

第一种:

find /path/to/directory -type f -exec rm {} \;

第二种:

ls -1 /path/to/directory | xargs -I{} rm {}

上面这两种方法可以成功的删除海量文件,速度也很快。但还有一种更好的方法,比如要删除上面提到的clientmqueue目录,里面全部是一个一个的邮件,用下面的方法:

service sendmail stop
cd /var/spool
mv clientmqueue clientmqueue-todelete
mkdir clientmqueue
chown --reference=clientmqueue-todelete clientmqueue
chmod --reference=clientmqueue-todelete clientmqueue
service sendmail start
rm -rf clientmqueue-todelete

上面的方法是将目录重命名,然后使用了 --reference 引用参数来重建目录,然后删除重命名的目录。直接删除目录的方法速度是十分的快。也可以留着备份不删。更安全。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • Linux CentOS7 vim临时文件使用

    Linux CentOS7 vim临时文件使用

    这篇文章主要介绍了Linux CentOS7 vim临时文件使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • Linux下配置jdk环境的方法

    Linux下配置jdk环境的方法

    这篇文章主要介绍了Linux下配置jdk环境的方法,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-05-05
  • Linux下安装MariaDB数据库问题及解决方法(二进制版本的安装)

    Linux下安装MariaDB数据库问题及解决方法(二进制版本的安装)

    MariaDB数据库 分为源代码版本和二进制版本,源代码版本需要cmake编译,这里是二进制版本的安装。下面通过本文给大家介绍Linux下安装MariaDB数据库问题及解决方法(二进制版本的安装),感兴趣的朋友参考下吧
    2016-11-11
  • Linux下如何寻找相同文件的方法

    Linux下如何寻找相同文件的方法

    这篇文章主要介绍了Linux下如何寻找相同文件的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • centos7修改系统语言为简体中文的实现

    centos7修改系统语言为简体中文的实现

    这篇文章主要介绍了centos7修改系统语言为简体中文的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Linux中查看指定文件夹内各个子文件夹内的文件数量

    Linux中查看指定文件夹内各个子文件夹内的文件数量

    今天小编就为大家分享一篇关于Linux中查看指定文件夹内各个子文件夹内的文件数量,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • CentOS服务器初始化设置详细说明

    CentOS服务器初始化设置详细说明

    这篇文章主要介绍了CentOS服务器初始化设置详细说明,需要的朋友可以参考下
    2018-01-01
  • Linux下的多线程编程(三)

    Linux下的多线程编程(三)

    学东西,往往实例才是最让人感兴趣的,老是学基础理论,不动手,感觉没有成就感,呵呵。
    2014-08-08
  • CentOS下使用Squid架设CDN服务器的方法

    CentOS下使用Squid架设CDN服务器的方法

    这篇文章主要介绍了CentOS下使用Squid架设CDN服务器的方法,需要的朋友可以参考下
    2014-07-07
  • vim编辑器常用命令总结

    vim编辑器常用命令总结

    这篇文章介绍了vim编辑器的常用命令,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06

最新评论