我正在运行以下命令:
find /var/www/html/content/processing -type d -mtime +1 -exec rm -rf {} \;
Run Code Online (Sandbox Code Playgroud)
我想删除文件夹下的所有文件processing
夹(永远不要删除处理文件夹)。
该命令processing
也在删除文件夹。如何限制脚本仅删除该文件夹下的文件夹?
slh*_*hck 39
最简单的方法是添加-mindepth 1
,这将跳过第一个深度层次结构,从而忽略您的父目录。
此外,你并不需要一个额外的-exec
调用rm
,您可以只delete
直接文件夹,如果他们是空的。
find /var/www/html/content/processing -mindepth 1 -type d -mtime +1 -delete
Run Code Online (Sandbox Code Playgroud)
如果它们不为空:
find /var/www/html/content/processing -mindepth 1 -type d -mtime +1 -exec rm -rf {} \;
Run Code Online (Sandbox Code Playgroud)
如果您很懒惰,还可以扩展通配符。由于*
默认情况下不包含当前目录(除非dotglob
设置),因此您还可以执行以下操作:
find /var/www/html/content/processing/* -type d -mtime +1 -delete
Run Code Online (Sandbox Code Playgroud)
但是,这也不会包括隐藏文件夹,同样是由于该dotglob
选项。
归档时间: |
|
查看次数: |
16199 次 |
最近记录: |