linux rsync 復制文件忽略文件夾


比如: /home/vagrant/test 目錄下有 a,b,c 三個文件夾,只復制 c 文件夾下面的文件到/home/vagrant/test2

使用cp命令復制的時候,只能排除一個目錄不被復制,如果想排除兩個或者多個目錄的話,就需要使用rsync命令來實現了,看下面的例子

# yum install rsync
# apt install rsync
$ cd /home/vagrant/test
$ pwd
$ /home/vagrant/test
$ rsync -av --exclude a --exclude b . ../test2
  • -a, --archive 歸檔模式,表示以遞歸方式傳輸文件,並保持所有文件屬性,等於-rlptgoD。
  • -v 顯示同步過程的詳細(verbose)信息
  • 第一個. 是把當前目錄做為同步源,因為執行rsync命令時已經進入到/home/vagrant/test
  • 第二個../test2 把相對當前目錄上級的test2 文件夾作為同步目標目錄

注意:--exclude后面的路徑不能為絕對路徑,必須為相對路徑才可以,否則出錯。

注解:

rsync命令是一個遠程數據同步工具可通過LAN/WAN快速同步多台主機間的文件。-a參數表示archive模式,-v表示詳細鏈模式輸出,-z表示傳輸文件時使用壓縮傳輸的模式。

References


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM