Find

如何遞歸複製所有不超過 1 天的文件?

  • November 14, 2015

如何遞歸複製所有不超過 1 天的文件?

我第一次嘗試

find . -amin -1440 | xargs cp /dest

但它不起作用,因為給定的項目xargs應該放在/dest參數之前。

您可以使用-tGNU 的選項cp

  -t, --target-directory=DIRECTORY
         copy all SOURCE arguments into DIRECTORY

您還應該使用find‘s否則,這將在帶有空格或其他奇怪字元的文件名上失敗-print0xargs -0

find . -amin -1440 -print0 | xargs -O cp -t /dest

更好的方法可能是使用find自身並xargs完全避免:

find . -amin -1440 -exec cp -t /dest {} +

最後,由於您提到了“文件”,您可能想要跳過目錄、符號連結和其他奇怪的東西,並告訴find您只查找正常文件:

find . -type f -amin -1440 -exec cp -t /dest {} +

引用自:https://unix.stackexchange.com/questions/243006