Linux 将PDF的内容打印到命令行

Linux 将PDF的内容打印到命令行,linux,pdf,command-line,cat,Linux,Pdf,Command Line,Cat,我正在寻找一个命令行程序,可以打印出PDF文件的文本,就像文本文件的cat一样。我很确定这样的东西是存在的,因为我记得几个月前用过它。我可以发誓它是pdfcat,但那只是一个合并工具。我发现了pdftotxt,这是可行的,但我更喜欢复制cat功能的东西,因为我想通过管道连接到grep。谢谢 在pdftotext的手册页上,我发现: pdftotext[选项][PDF文件[文本文件]] 描述 Pdftotext将可移植文档格式(PDF)文件转换为纯文本 Pdftotext读取PDF文件,PDF文件

我正在寻找一个命令行程序,可以打印出PDF文件的文本,就像文本文件的
cat
一样。我很确定这样的东西是存在的,因为我记得几个月前用过它。我可以发誓它是
pdfcat
,但那只是一个合并工具。我发现了
pdftotxt
,这是可行的,但我更喜欢复制
cat
功能的东西,因为我想通过管道连接到
grep
。谢谢

pdftotext
的手册页上,我发现:

pdftotext[选项][PDF文件[文本文件]]

描述 Pdftotext将可移植文档格式(PDF)文件转换为纯文本

Pdftotext读取PDF文件,PDF文件,然后写入文本文件,text文件。如果未指定文本文件,pdftotext将file.pdf转换为file.txt。如果文本文件为“-”,则将文本发送到标准输出

因此,如果您的目标是输出到stdout以便通过管道传输到grep,
pdftotext mydoc.pdf-
应该像
cat mytext.txt
一样工作,因此,
pdftotext mydoc.pdf-| grep mysearchterm

也许您可以尝试一下:

它是一个npm包,您需要安装nodejs(和npm)才能使用它

它可以用作命令行工具:

npm install -g easy-pdf-parser
pdf2text test.pdf > test.txt

这个工具将根据文本行的y坐标对文本行进行排序,所以在大多数情况下效果很好。而且它还可以很好地与unicode和跨平台(作为比较:mingw64的
pdftotext
将在windows上丢失unicode字符)。

尽管它看起来不是解决这个问题的方法,但是任何有兴趣从命令行与PDF文件交互的人都应该知道。(您可以查看
data\u dump
命令,查看是否可以从中获得有用的信息…)相关:这似乎是附带的(在试图确定要安装哪个软件包时可能有用的事实…)另请参阅Linux上的安装:
sudo apt get install poppler utils
,OSX:
brew install poppler