find -mmin -19 -exec rm '{}'\;
它将找到修改后的文件,然后删除它们。 但它给我的错误如下, find:缺少`-exec'
的参数还尝试了各种组合,如
find -mmin -19 -exec rm '{}';\
find -mmin -19 -exec rm '{}'/;
答案 0 :(得分:11)
命令与\;
find -mmin -19 -exec rm {} \;
find
已提供-delete
选项,因此您无需使用-exec rm ..
:
find -mmin -19 -delete
<强> -delete 强>
删除文件;如果删除成功,则为true。如果删除失败,一个 发出错误消息。如果-delete失败,则查找退出状态 非零(当它最终退出时)。自动使用-delete 打开-depth选项。
警告:不要忘记将find命令行评估为 表达式,所以把-delete放在第一个会让find尝试删除 一切都低于您指定的起点。测试时 找到您稍后打算使用的命令行 -delete,你应该明确指定-depth,以避免以后出现意外。因为-delete暗示-depth,所以你无能为力 一起使用-prune和-delete。
答案 1 :(得分:5)
你错过了将大括号与分号分开的重要空间。
find -mmin -19 -exec rm '{}' \;
但这样做相同,更容易输入,并且可能执行得更快。
find -mmin -19 -delete
答案 2 :(得分:0)
这是另一种选择。指定我们要删除文件的日期:
find /SYSADMIT/* -type f -not -newermt "AAAA:MM:DD HH:MI:SS" -delete
摘自:https://www.sysadmit.com/2019/08/linux-borrar-ficheros-por-fecha.html