Recoll è una fantastica applicazione di ricerca GUI full-text per Unix/Linux che supporta dozzine di formati diversi, incluso il PDF. Può persino passare il numero di pagina esatto e il termine di ricerca di una query al visualizzatore di documenti e quindi consente di saltare al risultato direttamente dalla sua GUI.
Recoll viene fornito anche con una valida interfaccia a riga di comando e un'interfaccia browser web.
C'è pdfgrep, che fa esattamente quello che suggerisce il suo nome.
pdfgrep -R 'a pattern to search recursively from path' /some/path
L'ho usato per ricerche semplici e ha funzionato bene.
(Ci sono pacchetti in Debian, Ubuntu e Fedora.)
Dalla versione 1.3.0 pdfgrep supporta la ricerca ricorsiva. Questa versione è disponibile in Ubuntu a partire da Ubuntu 12.10 (Quantal).
La tua distribuzione dovrebbe fornire un'utility chiamata pdftotext
:
find /path -name '*.pdf' -exec sh -c 'pdftotext "{}" - | grep --with-filename --label="{}" --color "your pattern"' \;
Il "-" è necessario per avere l'output di pdftotext su stdout, non su file. Il --with-filename
e --label=
options inserirà il nome del file nell'output di grep. L'opzionale --color
flag è carino e dice a grep di generare l'output usando i colori sul terminale.
(In Ubuntu, pdftotext
è fornito dal pacchetto xpdf-utils
o poppler-utils
.)
Questo metodo, usando pdftotext
e grep
, ha un vantaggio rispetto a pdfgrep
se vuoi usare le caratteristiche di GNU grep
quel pdfgrep
non supporta. Nota :pdfgrep-1.3.x supporta -C
opzione per la stampa della riga di contesto.