zoukankan      html  css  js  c++  java
  • Rsync同步神器

    Rsync清理大批量垃圾数据

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

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

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

    3) 将dirA的所有文件同步到dirB内,并删除dirB内多余的文件(目录结构需要保持一致 :#源目录和目标目录结构一定要一致!!不能是dirA/* dirB/  或者dirA/ dirB/*  或者 dirA/* dirB/* )

       rsync -avz --delete  dirA/     dirB/

  • 相关阅读:
    多项式牛顿迭代
    小明A+B
    分拆素数和
    选课时间
    今年暑假不AC
    Lowest Common Multiple Plus
    大小写转换问题(java程序)
    VS 中输入带空格的两个字符串
    整除的尾数
    不要62
  • 原文地址:https://www.cnblogs.com/ipyanthony/p/10411487.html
Copyright © 2011-2022 走看看