ここで検索したところ、次のようなものを見つけました。
find /path -name '*.pdf' -exec pdftotext {} - \; | grep "your query"
ただし、「クエリ」を含むpdfファイル内のテキストブロックを返します。代わりにファイル名を返すメソッドがありますか?
ここで検索したところ、次のようなものを見つけました。
find /path -name '*.pdf' -exec pdftotext {} - \; | grep "your query"
ただし、「クエリ」を含むpdfファイル内のテキストブロックを返します。代わりにファイル名を返すメソッドがありますか?
ニールが提案したように:あなたは-l
オプションを使うことができます。一致数も必要な場合は、次のことを試すことができます。
find /path -name '*.pdf' -exec pdftotext {} - \; | grep -H -c "your query"
-H
オプションはファイル名を出力し、オプション-c
はカウントを出力します。もちろん、後でカウントを取り除くことができます。
これにより、テキスト変換がクエリに一致するすべてのファイルがリストされます。
find /path -name '*.pdf' -exec sh -c "pdftotext {} - | grep --label {} -l 'your query'" \;