从rsync排除BUILD文件

问题描述:

我想从本地计算机上通过ssh将文件上传到服务器进行部署。在上传中,我想排除一些文件,如.pyc和BUILD。从rsync排除BUILD文件

我设法排除所有的文件,但名为BUILD的文件。

这是目前我(干运行)终端命令:

rsync -e ssh --dry-run \ 
    --recursive --archive --verbose \ 
    --delete \ 
    --exclude='*.pyc' \ 
    --exclude='*.scss' \ 
    --exclude='__*.js' \ 
    --exclude='*BUILD' \ 
    --exclude='*.jar' \ 
    --exclude='*.DS_Store' \ 
    --exclude='__pycache__' \ 
    local_folder/ \ 
    server:server_folder/ 

所有的排除工作,除BUILD。

我想:

--exclude='*/BUILD' 
--exclude='*BUILD' 
--exclude='BUILD' 

以前没有似乎已经检测并删除现有的构建文件。

关于如何排除这些文件的任何想法?

谢谢!

+0

尝试不使用'=',查看这些示例http://www.thegeekstuff.com/2011/01/rsync-exclude-files-and-folders/?utm_source=feedburner – nbari

+0

它适用于所有人其他人和它似乎接受:https://www.computerhope.com/unix/rsync.htm – nitobuendia

+0

ma你已经有远程系统中的文件BUILD,这就是为什么在那里,尝试远程删除它,然后再次同步,应该工作。 – nbari

该命令似乎正在工作,但可能是BUILD文件以前已存在。

如果你已经被转移排除的文件或目录,--delete-excluded将目的地侧删除它们,所以这应该工作:

rsync -e ssh --dry-run \ 
--recursive --archive --verbose \ 
--exclude='*.pyc' \ 
--exclude='*.scss' \ 
--exclude='__*.js' \ 
--exclude='*BUILD' \ 
--exclude='*.jar' \ 
--exclude='*.DS_Store' \ 
--exclude='__pycache__' \ 
--delete-excluded \ 
local_folder/ \ 
server:server_folder/ 

为了补充检查也是这个答案,解释rsync的https://superuser.com/a/156702/284722删除选项