我有一个问题,在 find 中使用“-o”选项来查找多个扩展名。
find "DIRECTORY" -type f -name \*.jpg -o -name \*.html -mtime +95
在上面我想删除超过一定时间的两个扩展名的所有文件。
通过使用
-o
列出多个名称,-mtime
仅适用于第二个还是旧的 jpg 也被排除在外?谢谢
最佳答案
你可以用括号解决这个问题:
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.
关于linux - 使用 find 命令删除超过特定时间的多个扩展,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20617513/