rsync –include 多个目录仅同步顶层

rsync –include 多个目录仅同步顶层

我正在尝试使用以下命令将三个目录及其所有内容从远程服务器 rsync 到本地文件夹:

rsync -havzP --delete --include 'content/***' --include 'data/***' --include 'public/assets/***' --exclude '*'  user@host:path/ ./

我们的目的是维护树结构,因此我最终在本地得到这个:

* content
  * [files]
* data
  * [files]
* public
  * assets
    * [files]

它大部分时候运行完美,除了它只同步内容和数据,由于某种原因公共/资产没有下载。

我做错了什么?

答案1

我通过这个答案明白了这一点:https://stackoverflow.com/a/46227148/39428

public/assets/***由于排除规则排除了 ,所以没有被包括在内public。因此也必须包括:

rsync -havzP --delete --include 'content/***' --include 'data/***' --include='public' --include 'public/assets/***' --exclude '*'  user@host:path/ ./

相关内容