Поиск в OSX для "ничего, кроме .."

255
stoobz

Я пытался очистить свои музыкальные папки, и я хочу удалить все, кроме файлов MP3.

Я хочу знать, как искать все, кроме MP3 и, очевидно, сами подпапки.

Что мне нужно ввести в окне прожектора, чтобы добиться этого?

1

2 ответа на вопрос

2
Daniel Beck

Введите что-нибудь в поле поиска Finder и очистите его снова. После этого вы окажетесь в поисковом интерфейсе с новой панелью вверху, без активных критериев поиска:

Screenshot

Нажмите +кнопку справа от новой контекстной панели поиска.

Удерживайте Optionи нажмите кнопку справа от новой записи (это еще одна +кнопка, пока вы не удерживаете Option).

Теперь это должно выглядеть так:

Screenshot

Удалите первый дополнительный ряд (тот, который показывал кнопку), нажав ее кнопку.

Затем настройте две недавно добавленные строки:

  • None верно следующее
    • Kind является Music MP3

Здесь, я все еще нужно изменить, Allчтобы MP3, но в противном случае, я сделал:

Screenshot

Спасибо Даниэль, я не знал хитрости с опцией click;) Но он также показывает мне папки - есть ли способ их исключить? или другая возможность будет иметь верхнюю панель для сортировки результатов по типу, дате или названию и т. д. stoobz 9 лет назад 0
@stoobz: просто добавьте еще одну строку в блок `None`, исключая` Kind` `Folder`… Daniel Beck 9 лет назад 0
1
holdenweb

Предполагая, что вы хотите удалить файлы, отличные от mp3, в любом месте определенного каталога (который, я предполагаю, является текущим каталогом), и что все они называются именами, оканчивающимися на .mp3, следующее должно работать.

find . -type f \! -name \*.mp3 -exec rm {} \; 

Более простой способ, указанный в комментарии ниже (спасибо, @DanielBeck!), Состоит в том, чтобы использовать эту -deleteопцию.

find . -type f \! -name \*.mp3 -delete 

Он находит все обычные файлы ( -type f), чье имя не ( \!) соответствует шаблону *.mp3, затем удаляет их ( -exec rm {} \;или более простой -deleteпараметр).

благодарю вас! Я попробую это. и чтобы определить папку, я должен заменить первое "." с путем к папке, верно? stoobz 9 лет назад 0
`-delete` - лучшая альтернатива` -exec rm`. Daniel Beck 9 лет назад 0
@stoobz - да, первые аргументы `find` - это путь поиска (и вы можете указать любое количество каталогов). holdenweb 9 лет назад 0
@ Даниэль - спасибо, показывает, что мои знания не так актуальны, как у вас, наверное. Как часто мы учимся одному способу выполнения задачи, а затем придерживаемся этого, даже при наличии лучших способов. holdenweb 9 лет назад 0