rsync 仅复制特定文件夹

发布于 2024-07-26 15:15:59 字数 526 浏览 3 评论 0原文

我有一个目录,其中包含文件和目录。 我想要的是从该目录中制作几个文件夹的 rsync 副本。 例如,假设我有这个:

/home/user
-- drwxr-xr-x  folderA
-- drwxr-xr-x  folderB
-- drwxr-xr-x  folderC
-- -rw-r--r--  file.1
-- -rw-r--r--  file.2

我想使用 rsync 复制folderA 和 folerB。 我创建了文件 rsync_folders.txt

+ /folderA/**
+ /folderB/**

我的问题是 rsync 将始终复制文件,除非它与排除模式匹配。 但是,如果我添加

- /**

任何内容,则不会复制任何内容,因为 rsync 首先与排除模式匹配。

有任何想法吗?

注意:我无法列出要排除的所有文件夹和文件。 它会不时发生变化。

I have a dir with files and dirs in it. What I want is to make rsync copy of several folders from that dir. For example, lets say I have this:

/home/user
-- drwxr-xr-x  folderA
-- drwxr-xr-x  folderB
-- drwxr-xr-x  folderC
-- -rw-r--r--  file.1
-- -rw-r--r--  file.2

I want to copy folderA and folerB using rsync. I have created file rsync_folders.txt

+ /folderA/**
+ /folderB/**

My problem is that rsync will always copy file unless it matches exclude pattern. But if I add

- /**

nothing is copied because rsync first matches against exclude patterns.

Any ideas?

Note: I cannot list all folders and files I want to exclude. It will be changing from time to time.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

窗影残 2024-08-02 15:16:00

使用 rsync -av src1 src2 src3 ... dst 或将要 rsync 的所有文件夹放入文本文件中(每个文件夹单独一行)并使用 rsync -arv -- files-from=sources.txt dst。
请注意,默认情况下 -a 意味着 --recursive 但在使用 --files-from 时则不然,因此在本例中 - r 必须明确指定。

Either use rsync -av src1 src2 src3 ... dst or put all the folders you want to rsync in a text file (each folder in a separate line) and use rsync -arv --files-from=sources.txt dst.
Note that by default -a implies --recursive but not when --files-from is used, so in this case -r must be specified explicitly.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文