Как искать строки внутри файлов в папке?

Существует ли какая-либо утилита для поиска строки в файлах ASCII, чтобы избежать поиска в командной строке?

Как выполнить поиск в командной строке, например, для строки «test» внутри всех файлов в каталоге /var/x/?

99
задан 24 January 2014 в 20:01

9 ответов

Вы можете использовать команду grep из терминала:

grep -r string *

Эта команда найдет все вхождения «string» во всех файлах в текущем каталоге (или подкаталогах). ).

Для скрытых файлов вы можете использовать:

grep -r string ..

0
ответ дан 24 January 2014 в 20:01

Вы можете использовать searchmonkey. Инструмент доступен в репозиториях, поэтому вы можете просто

sudo apt-get install searchmonkey

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

Вот скриншот из searchmonkey

enter image description here

0
ответ дан 24 January 2014 в 20:01

К сожалению, grep плохо выполняет поиск в файлах Word (.doc), но вы можете перенаправить вывод catdoc в grep. Я не программист, но этот маленький скрипт хорошо работает для меня:

#!/bin/bash
export GREP_OPTIONS='--color=auto'
echo -e "\n
Welcome to scandocs. This will search .doc (NOT .docx) files in this directory for a given string. \n
Type in the text string you want to find... \n"
read response
find . -name "*.doc" | 
while read i; do catdoc "$i" | 
grep -iH --label="$i" "$response"; done

Все улучшения и предложения приветствуются!

0
ответ дан 24 January 2014 в 20:01

Попробуйте Recoll, лучший графический интерфейс, который я когда-либо использовал. Чтобы установить recoll во всех поддерживаемых в настоящее время версиях Ubuntu, откройте терминал и введите:

sudo apt install recoll

Для индексации файлов сначала потребуется некоторое время (вы можете указать путь к черному списку, расширения или mime).

0
ответ дан 24 January 2014 в 20:01

Я предполагаю, что Ваш первый вопрос об альтернативе GUI grep команда. Я не могу помочь Вам с этим, я всегда нахожу командную строку очень эффективной.

Что касается командной строки, попробовать

grep "test" /var/x/*

Если Вы хотите искать рекурсивно (т.е. не только в /var/x/, но также и в подкаталогах этого), сделать

grep -R "test" /var/x/

Чтобы постараться не захватывать файлы, какой grep думает, чтобы быть двоичным, используйте -I опция:

grep -I "test" /var/x/

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

153
ответ дан 24 January 2014 в 20:01

Вы можете использовать regexxer , это отличный инструмент поиска / замены GUI для регулярных выражений.

Вы можете скачать по:

sudo apt-get install regexxer

enter image description here

0
ответ дан 24 January 2014 в 20:01

Я только что выпустил простой инструмент для работы. Он предназначен в основном для разработчиков программного обеспечения и имеет (уникальную?) Характеристику открытия нескольких файлов в одном окне. Он представляет результаты в браузере, используя редактор Ace (рекомендуется!) Или html textarea. Это инструмент на основе Java, поэтому он работает как в Windows, так и в Linux.

Проверьте это!

https://sourceforge.net/projects/queacetu.gastona.p/

0
ответ дан 24 January 2014 в 20:01

Вы можете использовать Возвышенный текст Find in Files выбор от Find меню, чтобы искать последовательности в файлах от папки.

, Чтобы Установить Возвышенный текст 3

sudo add-apt-repository ppa:webupd8team/sublime-text-3
sudo apt-get update
sudo apt-get install sublime-text-installer

Вы можете также следовать этот вопрос для других возможных способов установить Возвышенный на Ubuntu .

, Чтобы искать во всех файлах последовательность от папки в Возвышенный текст , Вы можете следовать этот вопрос для более четких ответов.

0
ответ дан 17 October 2019 в 14:17

на https://askubuntu.com/a/1141367/47073

можно использовать mate-search-tool, который является тем же самым как gnome-search-tool, который был удален. У меня были проблемы с searchmonkey, он пропускал некоторые результаты и был медленным, не рекомендовать.

Для установки mate-search-tool:

sudo apt install mate-utils
mate-search-tool
1
ответ дан 17 October 2019 в 14:17

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

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