rsync /数据/*/图像/模式

rsync /数据/*/图像/模式

我的文件夹结构如下:

- data
-- user 1
--- images
--- other stuff
-- user 2
--- images
--- other stuff
-- user 3
...

我想要rsync所有images文件夹。如果我使用包含/排除规则,我会遇到麻烦,因为我id事先不了解用户。在实际应用中它是一个随机数。

我需要这样的东西data/**/images/,这意味着获取数据文件夹下的所有图像文件夹。

ls如果没有像管道或类似的作弊行为,这是否可行rsync

答案1

如果您想复制所有images文件夹,那么一个简单的 shell 通配符就足够了。但是,您似乎希望保留目的地上的路径,因此您需要该-R标志来执行此操作。

cd /path/to/data
rsync -iavR */images remote:/path/to/destination/

这将包括*/images目标目录下目标上的源路径部分。所以如果你有源/path/to/data/12345/images/picnic.jpg代码,你最终会被复制到/path/to/destination/12345/images/picnic.jpg

如果您正在以交互方式运行并且想要查看发生了什么,请添加--progress或。--dry-run

相关内容