查找命令仅扫描子文件夹,而不仅仅是从最后一天复制文件

时间:2013-06-07 12:24:28

标签: linux cron find debian

我想要一个crontab命令,每天早上检查文件夹/ home / user / USBHD / Movies以查找不到一天的文件,然后将它们复制到我的/ home / user / NASVD / Movies,没有覆盖。我尝试了以下但是这不起作用,因为它似乎只扫描子文件夹并仍然复制所有文件,无论他们在何时制作..

01 08 * * * / usr / bin / find / home / user / USBHD / Movies / -mtime 1 -exec cp -n {} / home / user / NASVD / Movies \;

有任何想法吗?

我在开始时尝试了没有cronstuff的命令,并且它没有像应该的那样工作,就像已经解释过的那样。

希望你们能帮忙;)

编辑:我试过/ usr / bin / find / home / user / USBHD / Movies / -mtime +1 -exec cp -n {} / home / user / NASVD / Movies \;但这根本不起作用..

EDIT :::::::::::::::::::: / usr / bin / find / home / user / USBHD / Movies / -mtime 1 -exec cp -n {} / home / user / NASVD / Movies \;

我发现了这个字符串的问题 应该是什么:

 /usr/bin/find /home/user/USBHD/Movies/ -mtime '-1' -exec cp -n {} /home/user/NASVD/Movies \;

感谢您的帮助; D

1 个答案:

答案 0 :(得分:1)

/usr/bin/find /home/user/USBHD/Movies/ -mtime +1 -exec cp -n {} /home/user/NASVD/Movies \;

两点 - 这将继续复制超过1天的文件 - 包括2,3,4 ...永远。此外,我希望这是在用户的crontab中运行,以便文件权限正常工作。如果这是root的crontab,则复制的文件将由root拥有。此脚本也不会删除仅复制它们的第1天及以后的文件。所以:正如我所说,它将始终复制任何1天以上的文件。

如果您将cp更改为mv,该文件将从第一个目录中消失并移至第二个目录,