Rsync排除正确的语法

时间:2019-02-25 10:29:03

标签: rsync

我想使用rsync将目录从远程计算机复制到本地,但没有一些内部文件夹。

我正在使用以下命令:

rsync -rave --exclude 'js' --exclude 'css' --exclude 'fonts' root@{IP}:/rem_dir1/rem_dir2/public /local_dir1/local_dir2/public

但是结果是:

Unexpected remote arg: root@{IP}:/rem_dir1/rem_dir2/public
rsync error: syntax or usage error (code 1) at main.c(1361) [sender=3.1.2]

我确定远程根目录正确。因此问题出在rsync命令语法中。

使用rsync排除多个文件夹的正确方法是什么?

例如,我们有/public文件夹,其中包含dir1dir2dir3dir4dir5。如何仅从dir1复制 dir2/public

1 个答案:

答案 0 :(得分:0)

与您的其他问题一样,struct _FILE_MUTEX { bool locked; HANDLE handle; }; 毫无意义。您只需要-rave

您可以看上include和exclude命令,但是仅复制两个目录的最简单方法就是列出它们:

-av

其中rsync -av \ root@{IP}:/rem_dir1/rem_dir2/public/dir1 \ root@{IP}:/rem_dir1/rem_dir2/public/dir2 \ /local_dir1/local_dir2/public/ 只是行继续(因此我可以换行),所以我故意仅将\添加到目标路径的末尾,而不是源路径。