Назад | Перейти на главную страницу

Как я могу быстро выполнить поиск по всей файловой системе в ubuntu?

Мне нужно быстро найти строку во всей файловой системе. Есть ли программа, которая проиндексирует мой диск и позволит мне это сделать? Я пробовал трекер и рабочий стол Google, но они, похоже, не позволяют мне рекурсивно индексировать корень (/).

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

Если вы действительно делаете это регулярно, то вы найдете ряд инструментов полнотекстового индексирования, включая swish-e, Lucene, Сфинкс, и другие.

Вы можете найти ack быть особенно полезным. Он сочетает в себе find и grep в один инструмент и выборочно ищет файлы в зависимости от их типа или регулярных выражений, которые вы предоставляете. Он ориентирован на исходный код, но вы можете настроить поиск по всем файлам. Имя пакета в Ubuntu (и Debian): "подтверждение-grep".

find / -type f -exec grep ШАБЛОН {} \;

Если это рабочая станция, вы можете изучить Beagle [0] или что-то еще, что с тех пор заменило Beagle.

[0] http://beagle-project.org/Main_Page