Поиск документа по ключевому слову с использованием линз Unity

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

Я пытался добиться этого с помощью объективов Unity (Documents & amp; папки), но, похоже, Ubuntu ищет только имена (файлов и папок), но не заглядывает внутрь документов.

Пожалуйста, сообщите, могу ли я достичь своей цели с помощью Ubuntu или нет.

1
задан 2 June 2012 в 21:06

2 ответа

Я рекомендую установить и использовать Объектив Recoll :

Recoll - это инструмент для полнотекстового поиска, который индексирует содержимое многих форматов файлов, включая OpenOffice, MS Office, PostScript. , MP3 и другие аудио файлы, JPEG и многое другое. Помимо регулярного поиска, Recoll также позволяет выполнять некоторые расширенные операции, такие как поиск автора, размера файла, формата файла, а также таких операторов, как «И» или «ИЛИ».

Объектив Unity Recoll позволяет использовать Recoll от Dash без необходимости открывать какой-либо дополнительный графический интерфейс. Объектив поставляется с несколькими фильтрами, такими как «Текст», «Электронная таблица», «Презентация», «Медиа» или «Сообщение», но для более сложных поисков вам придется вручную ввести поисковый запрос Recoll. Примеры: автор: "john doe" metallica ИЛИ megadeth / 2007 (все документы от 2007 года или старше) dir: / path / to / dir (фильтрует содержимое из каталога / path / to / dir).

0
ответ дан 2 June 2012 в 21:06

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

  1. Открыть окно терминала ( Ctrl + Alt + T ).

  2. Измените каталог на вершину того, что вы хотите найти. Например, чтобы найти все в вашем домашнем каталоге, выполните cd ~. Чтобы найти все на вашем компьютере, выполните cd /. Для поиска всего на внешнем диске под названием DocDrive сделайте cd /media/DocDrive. Если в имени каталога есть пробелы, заключите его в кавычки (например, cd '/media/Documents Drive'.

  3. Запустите рекурсив grep следующим образом:

    grep -Rs 'word or phrase you are looking for' .

В качестве альтернативы, вы можете пропустить шаг 2 и вместо cd перейти к папке, в которую вы хотите заглянуть, замените . на шаге 3 на имя папки, в которую вы хотите заглянуть.

Если вы хотите искать по всем файлам, включая те, к которым у вас нет доступа, вы можете запустить grep как root с sudo :

sudo grep -Rs 'word or phrase you are looking for' .
0
ответ дан 2 June 2012 в 21:06

Другие вопросы по тегам:

Похожие вопросы: