
Michael Fisher
0
2973
708
Я слышал обо всем раньше и никогда не перевел взгляд.
Но сегодня поиск в сотнях тысяч файлов конкретного слова в названии файлов занял целую вечность. Я решил посмотреть, есть ли лучший способ сделать это, чтобы мне не пришлось ждать, пока мой компьютер завершит поиск, прежде чем я смогу получить полный список.
Я еще раз столкнулся с Все в Google. На этот раз я скачал его. Это был портативный файл размером 272 КБ, расположенный здесь. Я пробовал старый добрый инструмент индексирования Microsoft один или два раза за последнее десятилетие!
Я надеялся, что Все будет совсем другой историей. Согласно тому, что я прочитал, Все ТОЛЬКО ищет по именам файлов, и это делает это очень быстро. Но давайте на самом деле пройти через тесты.
Я извлек файл размером 589 КБ из zip-файла и запустил его. Вот что я увидел:
Хм ... все выглядит довольно пусто!
Итак, я собираюсь найти группу изображений из моей последней книги в Photoshop. Я думаю, что все изображения начинаются с Photoshop. Я просто набрал Photoshop и наблюдал, как мои результаты поиска заполнялись, когда я печатал. Я прокрутил немного программные файлы из Photoshop и убедился, что мои изображения на рабочем столе были в папке с именем фотошоп. Очень красиво и очень быстро.
Как это маленькое приложение может работать так быстро и эффективно? Я понятия не имею! Поэтому я открыл свой диспетчер задач и начал искать все. После полного поиска все использовали около 20 МБ памяти. Совсем неплохо! Пока я люблю это. Я решил побродить по их сайту и посмотреть, что еще можно сделать. Я нашел этот интересный кусочек в их FAQ:
Сколько времени займет индексация моих файлов?
“Все” Используются только имена файлов и папок, и, как правило, создание базы данных занимает несколько секунд. Новая установка Windows XP SP2 (около 20 000 файлов) займет около 1 секунды для индексации. 1 000 000 файлов займет около 1 минуты.
Все использует RegEx (Регулярные выражения) в своей строке поиска, чтобы помочь вам точно определить, что вы ищете. Как только вы освоите его, вы найдете его исключительно полезным во многих местах. Из файла справки программы вы найдете все выражения, которые поддерживаются и что они делают:
| -Вертикальная черта отделяет альтернативы. Например,
серый | серыйможет соответствовать “серый” или же “серый“.
()-Круглые скобки используются для определения области действия и приоритета операторов (среди прочего). Например,
серый | серыйа также
гр (а | е) уэквивалентные модели, которые оба описывают множество “серый” а также “серый“.
? -Знак вопроса показывает, что есть ноль или один предыдущего элемента. Например,
цветсоответствует обоим “цвет” а также “цвет“.
* -Звездочка указывает, что есть ноль или больше предыдущего элемента. Например,
Аб *Матчи “переменный ток“, “азбука“, “Аббв“, “Абббв“, и так далее.
+ -Знак плюс означает, что есть один или больше предыдущего элемента. Например,
AB + сМатчи “азбука“, “Аббв“, “Абббв“, и так далее, но не “переменный ток“.
. -Соответствует любому отдельному символу, кроме символов новой строки (какие именно символы считаются символами новой строки, зависит от стиля, кодировки символов и конкретной платформы, но можно с уверенностью предположить, что символ перевода строки включен). В выражениях в скобках POSIX символ точки соответствует литеральной точке. Например,
a.cМатчи “азбука“, и т.д., но
[A.c]только совпадения ““, “.“, или же “с“.
[] -Выражение в скобках. Соответствует одному символу, заключенному в квадратные скобки. Например,
[ABC]Матчи ““, “б“, или же “с“.
[A-Z]указывает диапазон, который соответствует любой строчной букве из “” в “Z“. Эти формы могут быть смешаны:
[Abcx-г]Матчи ““, “б“, “с“, “Икс“, “Y“, а также “Z“, так же как и
[А-сх-г][^]-Соответствует одному символу, который не содержится в скобках. Например,
[^ А]соответствует любому символу, кроме ““, “б“, или же “с“.
[^ А-г]соответствует любому отдельному символу, который не является строчной буквой из “” в “Z“. Как и выше, буквенные символы и диапазоны могут быть смешаны.
^ -Соответствует начальной позиции в строке. В линейных инструментах это соответствует начальной позиции любой линии.
$ -Соответствует конечной позиции строки или позиции непосредственно перед новой строкой, заканчивающейся строкой. В линейных инструментах это соответствует конечной позиции любой строки.
Т, п -Соответствует как минимум предыдущему элементу м и не более чем N раз. Например,
а 3,5только совпадения “ааа“, “аааа“, а также “ааааа“. Это не встречается в некоторых более старых случаях регулярных выражений.
Используя эти выражения, я попытался выполнить следующий поиск, чтобы найти элементы с AskTheAdmin в имени файла jpg или Karl в имени файла jpg. Я уверен, что вы уже можете себе представить, насколько это мощно!
Давайте посмотрим на параметры программы.
На экране «Общие» вы найдете обычные параметры запуска, а также некоторые интересные функции, такие как возможность запуска нескольких экземпляров «Все» или нескольких окон одного и того же экземпляра, а также горячих клавиш..
Все работает только на томах NTFS, поэтому, если вы откроете вкладку томов и ничего не появится - ваши диски, вероятно, не NTFS и должны быть обновлены.
Вкладка опции исключения позволяет вам указать папки или файлы, которые будут исключены, включая скрытые или системные файлы.
ETP - это функция, которая позволяет осуществлять удаленный поиск в вашей локальной базе данных. Более подробную информацию по этой теме можно найти здесь.
И HTTP предлагает вам возможность открыть веб-сервер на вашем локальном компьютере и разрешить запросы к вашей локальной базе данных следующим образом:
Вы также можете открыть это снаружи и искать на своем компьютере из дома, не имея удаленного рабочего стола. И с некоторыми хитрыми FTP'ами вы можете сами сделать отличное файловое решение..
Кто-нибудь использует Все или что-то подобное? Мы хотели бы услышать об этом в комментариях!