尋找並移動文件而不覆蓋並帶有輸出

尋找並移動文件而不覆蓋並帶有輸出

我正在嘗試從中查找並移動一些文件/home/用戶/fol1/home/用戶/fol2

一般來說我會使用

find . -type f -name "abc*" -exec mv -t "/path/to/foo/bar" {} +

但這會覆蓋已存在於中的同名文件/路徑/到/foo/bar
我希望它跳過那些已經存在的文件。

如果這需要一個循環,我還需要一個輸出,無論是 shell 上的純輸出還是日誌檔案中的輸出。

有任何想法嗎?

答案1

您可以使用n選項:

find . -type f -name "abc*" -exec mv -nt "/path/to/foo/bar" "{}" +

man mv

-n, --no-clobber
          do not overwrite an existing file

答案2

我正在使用 Mac 終端,這個命令給出了良好的結果:

尋找 FIle_Origin -type f -name "File_Name" -exec mv {} File_destination/ ;

相關內容