【Linux 命令】 rsync 目錄覆蓋軟鏈接,保持軟鏈接不變並同步目錄內容


需求:有兩個相同文件名的目錄需要使用其中一個目錄覆蓋另外一個
 
問題: 被覆蓋目錄下存在軟鏈接,但在源目錄下軟鏈接是一個目錄

需要解決的方案: 要求將原目錄里和被覆蓋目錄里沖突的目錄文件復制到B的軟鏈接文件下

目錄結構:

    被覆蓋目錄:
        /home/A
        ├── SubDir
        │   ├── File_b
        │   └── File_c
        └── SubDir_A -> SubDir

    
    源文件目錄:
        /tmp/A
        └── SubDir_A
            ├── File_a
            ├── File_b
            └── File_c

 文件內容:

  源文件:
     

 

  被覆蓋文件:

    

 圖解:

  

 

 解決方案:

  rsync -K -a 源目錄  被覆蓋目錄

結果:

  

  

原理:

  -K, --keep-dirlinks         treat symlinked dir on receiver as dir(將被覆蓋的鏈接視為目錄)

 


免責聲明!

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



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