Linux
Rsync/複製某些文件副檔名剝離文件夾
我有一堆帶有子目錄的文件夾,請參見下文
Books -- Temp1.nfo -- Temp2.txt -- Temp3.doc Books 2 -- Temp4.nfo -- Temp5.txt -- Temp6.doc
我想複製 txt 和 doc 文件副檔名並將它們放在一個目錄中。一個例子
Final --Temp2.txt --Temp3.doc --Temp5.txt --Temp6.doc
我可以使用 cp 命令完成此操作。問題是我無法查看狀態或進行試執行。
cp -u **/{*.mkv,*mp4,*avi} /home/joedoe/Books/
有沒有人能幫助我想出一個 rsync 命令來做到這一點?
SRC DEST 語法與
rsync
SRC DEST 語法非常相似cp
,因此您可以使用類似rsync -auv */*.{txt,doc} /home/joedoe/Books/
將所有 *.txt 和 *.doc 文件複製到目標目錄。
選項:
-a
存檔模式(的快捷方式-rlptgoD
)-u
跳過接收器上較新的文件(如cp -u
)-v
增加詳細程度由於存檔選項
-a
還包括遞歸-r
選項,因此您可以根據需要使用附加選項禁用此標誌--no-r
(-a
也將複製目錄Book/my.doc/
,因為它會匹配*.doc
模式並-a --no-r
禁用遞歸)。輸出
--dry-run
如下所示:$ rsync --dry-run -auv */*.{txt,doc} /home/joedoe/Books/ sending incremental file list created directory /home/joedoe/Books Temp2.txt Temp3.doc Temp5.txt Temp6.doc sent 221 bytes received 69 bytes 580.00 bytes/sec total size is 11 speedup is 0.04 (DRY RUN)
您可以添加多個
-v
參數以獲得更詳細的輸出,例如-vv
or-vvv
。