Bash 如何使用find和rm命令删除文件?
它将首先找到修改过的文件,然后删除它们。 但它给了我如下的错误, 查找:“-exec”缺少参数 还尝试了各种组合,比如Bash 如何使用find和rm命令删除文件?,bash,shell,unix,Bash,Shell,Unix,它将首先找到修改过的文件,然后删除它们。 但它给了我如下的错误, 查找:“-exec”缺少参数 还尝试了各种组合,比如 find -mmin -19 -exec rm '{}'\; 您需要在命令和\之间留出空间 find -mmin -19 -exec rm '{}';\ find -mmin -19 -exec rm '{}'/; find已经提供了-delete选项,因此您不需要使用-exec rm..: find -mmin -19 -exec rm {} \; -删除 删除文件;
find -mmin -19 -exec rm '{}'\;
您需要在命令和
\之间留出空间代码>
find -mmin -19 -exec rm '{}';\
find -mmin -19 -exec rm '{}'/;
find
已经提供了-delete
选项,因此您不需要使用-exec rm..
:
find -mmin -19 -exec rm {} \;
-删除
删除文件;如果删除成功,则为true。如果删除失败,则
发出错误消息。如果-delete失败,则将显示find的退出状态
非零(当它最终退出时)。使用-自动删除
启用-depth选项
警告:不要忘记find命令行是作为
表达式,因此先放置-delete将使find尝试删除
低于您指定的起点的所有内容。在测试
查找以后要用于的命令行
-删除时,应显式指定-depth,以避免以后出现意外情况。因为-delete意味着-depth,所以不能有效地
同时使用-prune和-delete
您缺少一个将大括号与分号分开的基本空格
find -mmin -19 -delete
但这也会产生同样的效果,更容易键入,而且可能执行得更快
find -mmin -19 -exec rm '{}' \;
这是另一个选择。指定要删除文件的日期:
find -mmin -19 -delete
摘录自:如果您不使用GNU特定的-delete
选项,请使用空格分隔{}
和分号,并使用+
而不是分号。它会给我错误rm:无法删除或
。'rm:无法删除'./rm1':是一个目录ls-a。。RM1您不能删除非空目录。如果你想移除整棵树,使find
首先运行深度。在exec之前添加-not-type d
,以避免该错误。@tripleee在all@Jasen但是使用find-delete
可以。使用find./-type f-iname\*.jpg-delete
只删除jpg
文件安全吗?它可以将删除当前目录和子目录中的所有jpg文件。
find /SYSADMIT/* -type f -not -newermt "AAAA:MM:DD HH:MI:SS" -delete