使用find命令删除比特定时间早的多个扩展

我有一个问题,使用find中的“-o”选项来查找多个扩展。

find "DIRECTORY" -type f -name \*.jpg -o -name \*.html -mtime +95 

在上面我想删除两个扩展名比一定时间的所有文件。 通过使用-o列出多个名称, -mtime仅适用于第二个或更老的jpgs也排除?

谢谢

你可以用圆括号解决这个问题:

 find "DIRECTORY" -type f \( -name \*.jpg -o -name \*.html \) -mtime +95 

find运算符按优先顺序进行评估。 从手册:

  ( expr ) Force precedence. Since parentheses are special to the shell, you will normally need to quote them. Many of the examples in this manual page use backslashes for this purpose: `\(...\)' instead of `(...)'. expr1 expr2 Two expressions in a row are taken to be joined with an implied "and"; expr2 is not evaluated if expr1 is false. expr1 -o expr2 Or; expr2 is not evaluated if expr1 is true. 

它只适用于第二个参数,只是做了一个手动检查真正快