2017-06-20 31 views
-1

包含特定的文件我使用RSYN到一个文件夹从源代码复制到desination从exluding文件夹

我能够使用排除成功

$ rsync -av --exclude='*/deploy/scb_pdm/*' --exclude='*/logs/*' $COPY_SRC_DIR $COPY_DEST_DIR 
server-4.5.0/conf/wrapper.conf 
server-4.5.0/deploy/ 
server-4.5.0/deploy/scb_pdm/ 
server-4.5.0/deploy/scb_pdm/director.properties 
server-4.5.0/deploy/scb_pdm/ocollate_static.madconfig 
server-4.5.0/lib/ 
server-4.5.0/lib/blue-marble-4.5.0.201511121524.jar 

现在我坚持,我怎样才能排除

server-4.5.0/deploy/scb_pdm/ocollate_static.madconfig 
+0

是否要在子目录右侧排除文件? – LethalProgrammer

+0

@ LethalProgrammer:是 – BalaB

+1

Stack Overflow是编程和开发问题的网站。这个问题似乎与题目无关,因为它不涉及编程或开发。请参阅帮助中心的[我可以询问哪些主题](http://stackoverflow.com/help/on-topic)。也许[超级用户](http://superuser.com/)或[Unix&Linux堆栈交换](http://unix.stackexchange.com/)会是一个更好的地方。 – jww

回答

0

我将从rsync的通用用法开始排除目录。

为了实现这一点,您需要使用--exclude标志。

rsync -arv --exclude cache/ your_src_dir/ your_dest_dir/ 

你的情况,这将排除具体的文件是ocollate_static.madconfig

rsync -arv --exclude='*/deploy/scb_pdm/ocollate_static.madconfig*' --exclude='*/logs/*' $COPY_SRC_DIR $COPY_DEST_DIR 

你可以认为使用另一个标志,是

--delete-excluded  also delete excluded files from dest dirs 

另一种选择,但不包括多个文件,并显示目录在同一时间的。

$ rsync -avz --exclude your_file1.txt --exclude dir3/file4.txt source/ destination/ 

有关使用排除rsync详细信息。

+1

它的工作原理。在这种情况下,如果我只想要“server-4.5.0/deploy/scb_pdm/director.properties”而不是“ocollat​​e_static.madconfig” – BalaB

+1

,我尝试了相同的“rsync -arv --include ='*/deploy/scb_pdm /director.properties*'--exclude ='*/logs/*'$ COPY_SRC_DIR $ COPY_DEST_DIR“。但它工作:( – BalaB