2017-06-20 66 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