摘要
在Linux Web维护过程中,Web服务会生成海量(万级)缓存文件。这些小文件会消耗大量的inode。使用我们最常用的删除命令rm -fr * 就不好用了,非常吃力,等待的时间太长了。有时会报错。-bash: /bin/rm: Argument list too long。
这时,我们可以使用rsync来实现快速删除大量文件。
如要删除的目录为cache/
mkdir /tmp/empty
rsync --delete-before -a -H --progress --stats /tmp/empty/ cache/
这样我们要删除的cache目录就会被清空了,删除的速度会非常快
rsync实际上用的是替换原理,处理数十万个文件都是秒删。
选项说明:
--delete-before 接收者在传输之前进行删除操作
--progress 在传输时显示传输过程
-a 归档模式,表示以递归方式传输文件,并保持所有文件属性
-H 保持硬连接的文件
-v 详细输出模式
–stats 给出某些文件的传输状态