2

我在这里搜索并找到了这个:

find /path -name '*.pdf' -exec pdftotext {} - \; | grep "your query"

但是,它会返回具有“您的查询”的 pdf 文件中的文本块。有一种方法可以返回文件名吗?

4

2 回答 2

2

这列出了其文本转换与您的查询匹配的所有文件:

find /path -name '*.pdf' -exec sh -c "pdftotext {} - | grep --label {} -l 'your query'" \;
于 2012-06-16T22:46:53.880 回答
2

正如 Neil 建议的那样:您可以使用该-l选项。如果你也需要匹配数,你可以试试这个:

find /path -name '*.pdf' -exec pdftotext {} - \; | grep -H -c "your query"

-H选项打印文件名,该-c选项打印计数。当然,您可以稍后删除计数。

于 2012-06-16T22:21:04.927 回答