複数のPDFファイルを grep して一気に検索する方法

複数のPDFの中身から特定の文字列を探していたのですが、面倒なので grep できんのか・・・と思っていたら pdftotext というコマンドを発見したのでメモします。

全体の流れ

PDFファイルを pdftotext でテキストファイルに変換して grep するというもの。

環境

% cat /etc/redhat-release
CentOS release 5 (Final)

複数のPDFファイルを一気にテキストファイルに変換

find ./ -name "*.pdf" -print0 | xargs -0 -i pdftotext {} {}.txt

.pdf ファイルのある同じ階層に .pdf.txt というファイルを作ります。

テキストファイルに変換されたファイルを一気にgrep

find ./ -name "*.pdf.txt" -print0 | xargs -0 -i grep hogehoge {}