首页
学习
活动
专区
圈层
工具
发布

重用rsync
EN

Unix & Linux用户
提问于 2016-02-07 18:24:48
回答 1查看 107.1K关注 0票数 41

我通常在做实际的rsync -n之前先做rsync。问题是,我如何能够自动化第二次运行来重用--dry-run生成的列表?

我的意思是,如果我运行rsync -n,我会得到一个rsync会做什么的模拟,我的想法是接受这个输出,然后处理它,然后以某种方式使rsync只让--include-from输出,所以必须只计算一次完整的列表。

如果这一点都说不通,请告诉我。

顺便说一下,我倾向于使用rsync -hva --progress --stats --delete --exclude-from "$EXCLUDEFILE"。如果你也有一个建议,你会使用什么选择,请,让我知道。我试图复制一个外部硬盘驱动器的内容(它只包含图像,视频和文档)到另一个外部硬盘驱动器。

EN

回答 1

Unix & Linux用户

发布于 2016-02-10 22:02:54

当然,可以将在试运行期间生成的文件列表作为包含文件使用。但是,理想情况下,应该删除试运行输出的顶部和底部的额外行。

示例输出:

代码语言:javascript
复制
sending incremental file list
[LIST OF FILES]

sent 226 bytes  received 34 bytes  520.00 bytes/sec
total size is 648,373,274  speedup is 2,493,743.36 (DRY RUN)

若要删除这些行,请将rsync输出导入headtail。然后,将处理后的输出保存到包含文件:

rsync --dry-run -avz source/ destination/ | head --lines=-3 | tail --lines=+3 > include.txt

最后,告诉rsync使用生成的包含文件(根据需要添加其他选项):

rsync --include-from=include.txt --exclude=* source/ dest/

票数 36
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/260616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档