我尝试查找大于1GB且属于特殊类型的文件(例如* .avi,* .mov,* .mpeg)。我到现在为止尝试的是
find . -name "*.mpeg" -o -name "*.mkv" -o -name "*.avi" -o -name "*.mov" -size +1073741824
但这似乎不起作用,因为它显示的文件大于1GB。我确信这不会那么复杂,但我只是没有看到解决方案:(
答案 0 :(得分:6)
find -cond1 -o -cond2 -cond3
将检查cond1 OR (cond2 AND cond3)
,而不是(cond1 OR cond2) AND cond3
。在数学和编程中,连接始终优先于析取。
要使其按您想要的方式工作,只需添加您自己的分组:
find . \( -name "*.mpeg" -o -name "*.mkv" -o -name "*.avi" -o -name "*.mov" \) -size +1073741824