zoukankan      html  css  js  c++  java
  • fswatch rsync配置使用 rsync 传输大量细小文件

     贴一个脚本这个脚本是rsync远程同步使用的一个脚本

    rsync -avz --progress --exclude .git /Users/piperck/Desktop/gogogo/x piperck@:/home/piperck/project

     在mac下配合fswatch使用可以达到监控文件变化,然后进行远程同步的目的。

    fswatch -o /Users/piperck/Desktop/gogogo/x  | xargs -0 -n 1 -I {} rsync -avz --progress --exclude .git /Users/piperck/Desktop/gogogo/x piperck@ip:/home/piperck/project

    rsync 本身进行文件传输的能力也非常强大和高效。

    有时候我们可能会用来传输大量文件

    如果不需要校准不进行增量传输的话可以使用 rsync -avW 来进行传输。 -z 是会对传输内容进行压缩,所以如果我们只是需要单纯的最大速度将现在的文件内容或者文件夹内容全力传输到目的地。我们会这用 -W 命令来关闭判断对方是否已经有这个文件以及对文件进行更新。 

    -W, --whole-file 拷贝文件,不进行增量检测 

    -a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD 

    -v, --verbose 详细模式输出

    -z, --compress 对备份的文件在传输时进行压缩处理

    这样可以保证我们用最大速度将文件内容传输至目标文件。 有时候大量细碎文件进行随机读取并且传输速度可能会慢得难以忍受。所以才有了之后直接快递硬盘的操作! XD

    reference:

    https://serverfault.com/questions/18125/how-to-copy-a-large-number-of-files-quickly-between-two-servers

    https://github.com/emcrisostomo/fswatch/wiki/How-to-Use-fswatch fswatch tutorial

    https://segmentfault.com/a/1190000005053788 ->hello fswatch

    http://os.51cto.com/art/201006/203217.htm -> rsync命令全解

    http://c.biancheng.net/cpp/view/2739.html -> Shell特殊变量:shell $0,$#,$*,$@,$?,$$和命令行参数

    http://suren1986.in/?tag=fswatch -> 监听fsevents事件自动同步文件夹

  • 相关阅读:
    python PIL实现图片合成
    pycharm在windows中如何安装dlib?
    Git将文件上传至Github过程
    安装skimage和cv2
    ubuntu下pip的安装,更新及卸载
    pycharm专业版激活破解(亲测有效)
    docker部署tensorflow serving以及模型替换
    Keras在MNIST实现LeNet-5模型训练时的错误?
    Ubuntu中VMware tools的安装步骤
    win10执行Tensorflow,总是会报错“DLL load failed: 找不到指定的模块”的解决方式----终极版方式
  • 原文地址:https://www.cnblogs.com/piperck/p/5454201.html
Copyright © 2011-2022 走看看