rsync刪除目標機器中非空資料夾

2021-09-16 19:20:37 字數 1550 閱讀 1378

rsync

命令說明:

--exclude:上傳/刪除失效

上傳時:不上傳指定檔案/目錄

刪除時:不刪除指定檔案/目錄

--delete:刪除所有上傳目錄不存在的檔案/目錄,但是,不刪除任何目標檔案在exclude中的檔案/目錄

--delete-exclude:將--exclude功能設定為只針對上傳,刪除時失效。即刪除目標路徑中所有上傳目錄不存在的檔案/目錄,但是所有exclude中的內容都生效,特別危險。建議使用修飾符-s方式。

-n選項:預先檢查本次刪除操作涉及到的檔案

--include/exclude中修飾符

-s:設定exclude中的排除只針對上傳,刪除失效

實驗:src:上傳機器

desc:目標機器

exclude:上傳和刪除都排除某個pattern(*.sh)

-n選項:預先檢查本次刪除操作涉及到的檔案

需求:a、上傳時,src機器不上傳*.sh和*.txt檔案,使用exclude實現

b、只刪除desc中src不存在的*.s**件並清除相關目錄,即*.txt檔案不受影響。

如下圖所示,我想刪除desc機器中conkg/tsh/test.sh同時刪除conkg/ts**件夾:

注意:實驗時,預設加上-n選項,只檢視不刪除。

1、使用--delete命令時,發現並不會能夠刪除conkg/tmp資料夾和test.s**件:

2、使用--delete-excluded,發現desc中所有src中不存在的*.sh和*.txt檔案都被刪除了

3、使用-s修飾符效果:看到只會刪除ts**件夾和test.s**件

可以看到desc機器中ts**件夾和test.s**件都被刪除了

linux 批量刪除空檔案或空資料夾

1.批量刪除空檔案 大小等於0的檔案 find name type f size 0c xargs n 1 rm f 2.刪除指定size大小檔案 find name type f size 1024c xargs n 1 rm f ps 此處即刪除1k大小的檔案.但注意不要用 size 1k,這個...

linux中find批量刪除空檔案及空資料夾指令碼

linux 下批量刪除空檔案 大小等於0的檔案 的方法 find name type f size 0c xargs n 1 rm f用這個還可以刪除指定大小的檔案,只要修改對應的 size 引數就行,例如 find name type f size 1024c xargs n 1 rm f注 刪除...

Python刪除空檔案和空資料夾的方法

coding cp936 os.walk 函式宣告 walk top,topdown true,onerror none 1 引數top表示需要遍歷的目錄樹的路徑 2 引數topdown的預設值是 true 表示首先返回目錄樹下的檔案,然後在遍歷目錄樹的子目錄.topdown的值為www.cppcn...