2009-03-29 7 views
1

J'ai des fichiers PDF dont le contenu n'a pu être recherché par aucun programme terminal. Je ne peux les rechercher que par Acrobat Reader et Skim. Comment pouvez-vous rechercher le contenu des fichiers pdf dans le terminal?Impossible de rechercher le contenu des fichiers pdf dans le terminal

Il semble qu'une meilleure question est

Comment la recherche effectuée dans les visionneuses PDF tels que Acrobat Reader et Skim? Peut-être, j'ai besoin de faire un tel outil de recherche si de tels outils n'existent pas.

Répondre

2

Essayez d'installer xpdf de MacPorts; il est censé venir avec un outil appelé pdftotext qui devrait alors vous permettre de rechercher en utilisant grep.

1

Les fichiers PDF sont généralement compressés. Les visionneuses de PDF telles qu'Acrobat Reader et Skim effectuent une recherche dans le contenu en décompressant le texte PDF en mémoire, puis en recherchant ce texte. Si vous souhaitez effectuer une recherche à partir de la ligne de commande, vous pouvez utiliser pdftk pour décompresser le PDF, puis utiliser grep (ou votre utilitaire de recherche de texte de ligne de commande favori) pour rechercher le texte souhaité. Par exemple:

# Search for the text "text_to_search_for", and print out 3 lines of context 
# above and below each match 
pdftk mydoc.pdf output - uncompress | grep -C3 text_to_search_for 
2

pdftotext est en effet un excellent outil, mais il produit de très longues lignes; pour vous rencontrer, vous voulez les décomposer, par exemple,

pdftotext drscheme.pdf - | fmt | grep -i spidey 
Questions connexes