Программное обеспечение для поиска текста в файлах
Я ищу программное обеспечение, которое будет искать текст в файлах из папки, похожей на XYplorer.
Есть ли что-то подобное?
10 ответов
Есть очень хороший, который поставляется с Ubuntu из коробки.
Откройте Dash (Super key или кнопку Ubuntu) и начинайте печатать, пока не найдете
Search for Files
Выше для Unity, среды рабочего стола по умолчанию в Ubuntu. В среде, управляемой меню, перейдите к
Applications
->Accessories
->Search for Files
Разверните
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:
- В настоящее время Searchmonkey работает с 64-битной Ubuntu. Это похоже на regexxer. Он появился быстро, но, естественно, он намного медленнее, чем поиск по индексу.
- Поиск файлов и Alt-F2 не работают с версией KDE Ubuntu.
Моя рекомендация - 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
Первая строка, вероятно, не требуется: она добавляет репозиторий установки партнера.
- Антислово необязательно. Это необходимо для поддержки старых файлов.doc.
- При необходимости включите следующие символические ссылки и корневой каталог в предпочтениях Recoll.
- Создайте задание cron для индексации Recoll с помощью графического интерфейса или запустите его при каждом входе в систему.
- Измените настройку Recoll в настройках с английского на все языки, если это вам подходит.
- Начать индексирование, по крайней мере для меня, это было на удивление быстро и не использовало все ресурсы, поэтому я смог продолжить использовать ноутбук.
- До сих пор я обнаружил одну ошибку в Recoll: если вы ищете имя файла с помощью "PST", он не находит его, даже если он находится в верхнем регистре. "pst" работает и находит как прописные, так и строчные имена.
- Подробнее об отзыве 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
- Измените корневой каталог с ~ на / при необходимости в команде поиска.
- Мой скрипт поиска содержит ошибку: он создает слишком длинную структуру каталогов. Но мне было легче изменить временный файл вручную, чем найти решение этой проблемы. Основной целью было то, что это будет работать для нескольких файлов PST, и это делает это.
- Подробнее о 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
Нажмите на изображение, чтобы увидеть демо-анимацию