Как искать .tex-файлы?

Какую версию модема вы используете? В новейшей версии есть программные пакеты для всех ОС. Снова вы можете проверить свой необходимый пакет с http://ztemt.com/ennewzte/service/default.action.

1
задан 30 June 2016 в 08:15

3 ответа

Несмотря на то, что вы ищете решение для графического интерфейса, я хотел бы поделиться решением командной строки, потому что я считаю, что он очень удобен и прост в использовании:

tl; dr:

Используйте grep -w methyldopa *.tex | cut -d":" -f1, если все файлы находятся в одном каталоге. Используйте find -name "*.tex" -exec grep -H -w methyldopa {} \; | cut -d":" -f1 в каталоге, где все файлы, которые хотите найти, находятся в подкаталогах. Edit: Shortest Way (кредиты @AB): grep -rwl methyldopa | grep .tex

длинная версия с пояснениями:

Первый случай:

Все файлы, которые вы хотите найти находятся в одном каталоге. Это самый простой сценарий. Вы можете просто использовать

grep -w methyldopa *.tex | cut -d":" -f1 

, чтобы найти все .tex файлы, содержащие methyldopa.

Объяснение: Содержимое каталога и файла: [!d12 ]

file1.txt
file2.txt
file3.list

#file1.txt
foo
bar
foobar

#file2.txt
foo
foobar
1337

#file3.list
foo
bar
foobar

Теперь вы можете использовать grep foo * для поиска foo во всех файлах. Это будет waht, вы получите:

file1.txt:foo
file1.txt:foobar
file2.txt:foo
file2.txt:foobar
file3.list:foo
file3.list:foobar

Использование опции -w не позволит найти foobar:

grep -w foo *

file1.txt:foo
file2.txt:foo
file3.list:foo

Если вы хотите ограничить поиск файлами со специальным окончанием вы можете сделать следующее:

grep -w foo *.txt

file1.txt:foo
file2.txt:foo

И последнее, но не менее важное: вы можете передать результаты команде cut для извлечения только имен файлов (-d":" устанавливает поле разделитель :, -f1 возвращает первое поле каждой строки):

grep -w foo *.txt | cut -d":" -f1

file1.txt
file2.txt

Второй случай:

Ваши файлы находятся в разных каталогах. В этом случае вы должны сначала find найти файлы:

find -name "*.txt" -exec grep -H -w foo {} \; | cut -d":" -f1

Объяснение:

find -name "*.txt" ищет файлы, заканчивающиеся на .txt в вашем текущем каталоге и во всех подкаталогах. Вы можете использовать что-то вроде find ~/Documents/ -name "*.txt", чтобы начать поиск на ~/Documents.

-exec grep -H -w foo {} \; выполняет поиск foo в каждом найденном файле и возвращает что-то вроде этого (флаг -H гарантирует , что имя файла напечатано):

./testdir/file2.txt:foo
./testdir/file1.txt:foo

Как и в первом случае, | cut -d":" -f1 вырезает имена файлов с выхода.

2
ответ дан 23 May 2018 в 14:54
  • 1
    Самый простой способ - grep -rwl methyldopa *.tex – A.B. 20 December 2015 в 19:08
  • 2
    @ A.B. черт возьми - я не думал об этом ;-) – Wayne_Yux 20 December 2015 в 19:20
  • 3
    @ A.B. Ваша команда выполняет поиск только в одном каталоге. Я думаю, вам нужно расширить его с помощью find, чтобы получить поиск во многих каталогах. – Léo Léopold Hertz 준영 20 December 2015 в 19:49
  • 4
    @Masi Нет, -r для recursive – A.B. 20 December 2015 в 20:05
  • 5
    @ A.B. Неудачно в моей системе для многих каталогов. Он ищет только текущий каталог, даже с помощью grep -rwl and *.tex. – Léo Léopold Hertz 준영 20 December 2015 в 20:10

Для графического решения (и более мощного, когда он работает правильно, что больше всего времени), нужно установить recoll.

Вам нужно будет установить его [d1 ] recoll --- посмотрите инструкции по загрузке (прокрутите вниз до части для систем Ubuntu).

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

В вашем случае просто вызовите интерфейс Recoll:

(я использовал «puente» в качестве поискового запроса, потому что у меня нет методопы вокруг ;-)) --- поиск написан в .

2
ответ дан 23 May 2018 в 14:54

Я предлагаю использовать Recoll для индексированного поиска с графическим интерфейсом и функцией предварительного просмотра! Он находится в официальных репозиториях, прост в использовании и очень мощный.

0
ответ дан 23 May 2018 в 14:54
  • 1
    Recoll, похоже, является инструментом спуска с активным развитием. Вы знаете, какие преимущества имеют расширение python-recoll с Recoll? – Léo Léopold Hertz 준영 20 December 2015 в 17:50

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

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