Recoll je fantastická fulltextová vyhledávací aplikace GUI pro Unix/Linux, která podporuje desítky různých formátů, včetně PDF. Může dokonce předat přesné číslo stránky a hledaný výraz dotazu do prohlížeče dokumentů, a tak vám umožní přejít na výsledek přímo z jeho GUI.
Recoll také přichází s životaschopným rozhraním příkazového řádku a rozhraním webového prohlížeče.
Existuje pdfgrep, který dělá přesně to, co jeho název napovídá.
pdfgrep -R 'a pattern to search recursively from path' /some/path
Použil jsem to pro jednoduché vyhledávání a fungovalo to dobře.
(V Debianu, Ubuntu a Fedoře existují balíčky.)
Od verze 1.3.0 podporuje pdfgrep rekurzivní vyhledávání. Tato verze je dostupná v Ubuntu od Ubuntu 12.10 (Quantal).
Vaše distribuce by měla poskytovat nástroj s názvem pdftotext
:
find /path -name '*.pdf' -exec sh -c 'pdftotext "{}" - | grep --with-filename --label="{}" --color "your pattern"' \;
Znak "-" je nezbytný pro výstup pdftotext do stdout, nikoli do souborů. --with-filename
a --label=
volby vloží název souboru do výstupu grep. Volitelné --color
flag je pěkný a říká grepu, aby vystupoval pomocí barev na terminálu.
(V Ubuntu pdftotext
poskytuje balíček xpdf-utils
nebo poppler-utils
.)
Tato metoda pomocí pdftotext
a grep
, má výhodu oproti pdfgrep
pokud chcete používat funkce GNU grep
že pdfgrep
nepodporuje. Poznámka :pdfgrep-1.3.x podporuje -C
možnost pro tisk řádku kontextu.