(总结)Linux下使用rsync最快速删除海量文件的方法

昨天遇到了要在Linux下删除海量文件的情况,需要删除数十万个文件。这个是之前的程序写的日志,增长很快,而且没什么用。这个时候,我们常用的删除命令rm -fr * 就不好用了,因为要等待的时间太长。所以必须要采取一些非常手段。我们可以使用rsync来实现快速删除大量文件。

1、先安装rsync:
yum install rsync
2、建立一个空的文件夹:
mkdir /tmp/test
3、用rsync删除目标目录:
rsync --delete-before -a -H -v --progress --stats /tmp/test/ log/
这样我们要删除的log目录就会被清空了,删除的速度会非常快。rsync实际上用的是替换原理,处理数十万个文件也是秒删。

选项说明
–delete-before 接收者在传输之前进行删除操作
–progress 在传输时显示传输过程
-a 归档模式,表示以递归方式传输文件,并保持所有文件属性
-H 保持硬连接的文件
-v 详细输出模式
–stats 给出某些文件的传输状态

时间: 2024-11-21 00:18:42

(总结)Linux下使用rsync最快速删除海量文件的方法的相关文章

Linux下使用rsync最快速删除海量文件的方法

常用的删除命令rm -fr * 就不好用了,因为要等待的时间太长.所以必须要采取一些非常手段.我们可以使用rsync来实现快速删除大量文件. 1.先安装rsync: yum install rsync 2.建立一个空的文件夹: mkdir /tmp/test 3.用rsync删除目标目录: rsync --delete-before -a -H -v --progress --stats /tmp/test log 这样我们要删除的log目录就会被清空了,删除的速度会非常快 来自为知笔记(Wiz

linux下如何查看文件大小 快速找到最大文件的方法

查看当前目录的大小 du -sh . 查看当前目录下所有文件或者目录的大小 du -sh * 显示前10个占用空间最大的目录 du -s * | sort -nr | head 显示前10个占用空间最大的文件,使用MB为单位 du * --block-size=MB |sort -nr | head 或者也可写成 du * -B MB | sort -nr | head linux下如何查看文件大小 快速找到最大文件的方法

在linux下使用debugfs恢复rm删除的文件

在linux下使用debugfs恢复rm删除的文件?? 以下方法在ext3的文件系统上测试通过, 以下是通过root来实现的?主要借助debugfs fdisk /dev/vdamkdir /mnt/testmount /dev/vda3 /mnt/test1 运行debugfs,进入调度模式[[email protected] test]# debugfs -w /dev/vda3/////////////////////////[[email protected] test]#sudo de

如何在Linux下使用Rsync

如何在Linux下使用Rsync 吐槽 昨天对scp进行总结之后看到最后有说到Rsync,俗语有云:好奇心害死猫.抱着学习的态度将Rsync给找了出来,然后进行了一些简单的学习.下面介绍一些个常用的命令.上篇的scp:12个scp传输文件的栗子. 简介 rsync是类unix系统下的数据镜像备份工具——remote sync.一款快速增量备份工具 Remote Sync,远程同步 支持本地复制,或者与其他SSH.rsync主机同步. 对于各种组织和公司,数据对他们是最重要的,即使对于电子商务,数

linux下的c语言编程删除文件夹

刚刚在学习开始做新项目的时候,学长布置了一项任务,就是在给定一个目录下,要将这个目录下一个星期之前的目录包括里面的文件全部删除,只保留这一个星期内的.百度了好久的资料,终于完成,记录一下防止忘记.(注:文件夹名称默认为日期格式,如20140716) #include<dirent.h> #include<sys/types.h> #include<string.h> #include<stdlib.h> #include<unistd.h> #i

(转)Linux下通过rsync与inotify(异步文件系统事件监控机制)实现文件实时同步

Linux下通过rsync与inotify(异步文件系统事件监控机制)实现文件实时同步原文:http://www.summerspacestation.com/linux%E4%B8%8B%E9%80%9A%E8%BF%87rsync%E4%B8%8Einotify%E5%BC%82%E6%AD%A5%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E4%BA%8B%E4%BB%B6%E7%9B%91%E6%8E%A7%E6%9C%BA%E5%88%B6%E5%AE%9E

Linux下两种删除过期文件的方法详述

一.概述 在实际的C软件开发项目中,不同的软件会在不同的目录中生成文件,由于磁盘的存储空间有限,开发人员不得不考虑对目录下的过期文件进行删除.一般说来,有两种删除过期文件的方法,一种是在C程序中实现,一种是利用crontab实现.本文对这两种方法的具体实现进行详细的介绍. 为了便于说明,本文中的过期文件的后缀为.c,存放在/home/zhou/zhouzx/Test目录下,过期时间为1天. 二.在C程序中实现过期文件删除 在该方法中,我们要考虑的主要问题为: (1)要删除过期多久的文件?文件存放

BAT 快速删除CVS文件和拷贝最近修改文件的目录结构

相信大家在操作大量文件的的时候,经常会遇到一些手动很难操作的情况 比如有CVS版本控制下每个文件夹下都有一个CVS文件夹,一个个手工删除肯定很费劲,我们都是懒人,还是用工具解决吧.不用重新写程序,直接用BAT命令就能作到.把下面的代码拷贝到记事本,保存成bat可执行文件,放到CVS根目录下,直接执行就行. ? 1 2 3 4 5 6 7 @echo off echo Deleting CVS folders and files under: %1 REM Open Folder specifie

将linux下的rm命令改造成移动文件至回收站【转】

转自:http://blog.csdn.net/a3470194/article/details/16863803 [-] 将linux下的rm命令改造成移动文件至回收站 将AIX下的rm命令改造成移动文件至回收站 将linux下的rm命令改造成移动文件至回收站 rm是Linux下文件删除的命令,它是Linux下非常强大却又非常危险的一条命令,特别是rm -rf有时候强大到让你欲哭无泪,当你想清除当前目录下的所有文件和目录时,很简单 #rm -rf ./* 这没什么,但是,但是如果不小心打成这样