2014-01-25 3 views
1

Я пытаюсь найти файлы размером более 1 ГБ и имеют особый тип (например, * .avi, * .mov, * .mpeg). То, что я не пытался до сих пор являетсяКоманды терминала OSX для поиска файлов с несколькими критериями

find . -name "*.mpeg" -o -name "*.mkv" -o -name "*.avi" -o -name "*.mov" -size +1073741824 

Но это, кажется, не работает, как это показывает файлы, которые < 1GB. Я уверен, что не может быть, что сложно, но я просто не вижу решения :(

ответ

5

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 
+0

это, кажется, не работает так, как я надеялся, в основном он должен найти все файлы в пределах или ниже текущего каталога, которые соответствуют критериям «видео "и размер файла> 1 ГБ. – user3236362

+0

Звездочки исчезли в копировальной пасте. вл. –

+0

работал :-) Большое спасибо! – user3236362

Смежные вопросы