Программное обеспечение для поиска текста в файлах

Я ищу программное обеспечение, которое будет искать текст в файлах из папки, похожей на XYplorer.

Есть ли что-то подобное?

10 ответов

Решение

Есть очень хороший, который поставляется с Ubuntu из коробки.

  1. Откройте Dash (Super key или кнопку Ubuntu) и начинайте печатать, пока не найдете Search for Files

    введите описание здесь

  2. Выше для Unity, среды рабочего стола по умолчанию в Ubuntu. В среде, управляемой меню, перейдите к Applications -> Accessories -> Search for Files

    введите описание здесь

  3. Разверните Select more options раздел и введите текст для поиска в Contains the text: поле ввода.

    введите описание здесь

Особенности:

  • 100% GUI
  • Вы можете искать имена файлов или содержимого
  • Это выглядит в подпапках.

Учитывая ваш сценарий (нет терминальных команд, простой в использовании интерфейс), я думаю, что нет лучшего варианта.

PS: на Contains the text: поле ввода '.' символ является подстановочным знаком. Чтобы избежать этого, вы должны использовать '[]'. Например: тип Contains the text: [.]myFunction искать.myFunction

Использование

 grep -nr <your text> .

поместите текст, который вы хотите найти, внутри <ваш текст>

Я фанат searchmonkey (GPL, бесплатный, кроссплатформенный, довольно легкий по ресурсам и очень быстрый).

введите описание здесь

Ты можешь использовать

find . -name '*.*' -exec grep -Hn 'text to find' '{}' \;

-name '*.*' или '*.txt' (используйте маску файла здесь)
'текст для поиска' (поместите текст, который вы хотите найти здесь)

find . -type f -exec grep -Hn 'text to find' '{}' \;

если вы хотите найти все файлы

GUI (графический) инструмент:

gnome-search-tool

вы можете найти его в главном меню Ubuntu

Menu -> Accessories -> Search for Files

или запустить его с помощью горячей клавиши ALT+F2

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

введите описание ссылки здесь

Графический поиск:

в Kubuntu откройте Dolphin, затем Edit->Find (Ctrl+F)

измените имя файла на Content и настройте, где искать.

Recoll выполняет индексацию, и вы можете выполнять полнотекстовый поиск документов и электронной почты.

Я сравнил три предложения здесь с 64-битным 16.04 Kubuntu:

  1. В настоящее время Searchmonkey работает с 64-битной Ubuntu. Это похоже на regexxer. Он появился быстро, но, естественно, он намного медленнее, чем поиск по индексу.
  2. Поиск файлов и Alt-F2 не работают с версией KDE Ubuntu.
  3. Моя рекомендация - Recoll, и я добавил для нее несколько инструкций по установке. Для меня установка по умолчанию поддерживает PDF (протестируйте это!), DOCX, TAR, ZIP и т. Д.

    sudo add-apt-repository "deb http://archive.canonical.com/ $(lsb_release -sc) partner"
    sudo apt-get install recoll antiword
    recoll
    
  4. Первая строка, вероятно, не требуется: она добавляет репозиторий установки партнера.

  5. Антислово необязательно. Это необходимо для поддержки старых файлов.doc.
  6. При необходимости включите следующие символические ссылки и корневой каталог в предпочтениях Recoll.
  7. Создайте задание cron для индексации Recoll с помощью графического интерфейса или запустите его при каждом входе в систему.
  8. Измените настройку Recoll в настройках с английского на все языки, если это вам подходит.
  9. Начать индексирование, по крайней мере для меня, это было на удивление быстро и не использовало все ресурсы, поэтому я смог продолжить использовать ноутбук.
  10. До сих пор я обнаружил одну ошибку в Recoll: если вы ищете имя файла с помощью "PST", он не находит его, даже если он находится в верхнем регистре. "pst" работает и находит как прописные, так и строчные имена.
  11. Подробнее об отзыве https://www.lesbonscomptes.com/recoll/features.html.

Если вы хотите добавить поддержку файлов Outlook PST, то вам также необходимо выполнить следующее.

    sudo apt-get install readpst
    mkdir ~/PST
    find -L ~ -name "*.pst" -print | awk "{ printf \"%s%s %s%s%s %s\\n\", \"mkdir ~/PST/\", \$1, \"; readpst -o ~/PST/\", \$1, \" -D -j 4 -r -tea -u -w\", \$1 }" > /tmp/myPstFiles
    cat /tmp/myPstFiles
    chmod 755 /tmp/myPstFiles
    /tmp/myPstFiles
  1. Измените корневой каталог с ~ на / при необходимости в команде поиска.
  2. Мой скрипт поиска содержит ошибку: он создает слишком длинную структуру каталогов. Но мне было легче изменить временный файл вручную, чем найти решение этой проблемы. Основной целью было то, что это будет работать для нескольких файлов PST, и это делает это.
  3. Подробнее о Readpst читайте в http://www.five-ten-sg.com/libpst/rn01re01.html и https://blog.robseder.com/2015/08/29/working-with-a-pst-file-in-linux/

Я действительно хочу представить один инструмент, основанный на библиотеке ncurses, для предоставления текстового пользовательского интерфейса. Инструмент под названием NCGREP(grep на основе ncurses) в основном предназначен для поиска текста в определенной папке. Надеюсь, это то, что вы хотите. Этот источник инструмента был размещен на github.com, подробнее на https://github.com/ncgrep/ncgrep


Нажмите на изображение, чтобы увидеть демо-анимацию

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