我需要一种方法来在 Linux 中从所有 MS Office 文档类型(Word、Excel、Powerpoint)中提取文本。我设想可能有几种不同的方法来实现这一点,例如 Bash 或 Python 脚本,或者将它们转换为 PDF,然后使用 pdftotext 等工具提取文本。
这似乎是一个常见的要求。是否有既定的程序或工具可以轻松实现此目的?
答案1
卡特多克可以将 doc、xls 和 ppt 转换为文本。第二个选项是威盛。
更多实用工具请查看http://www.linux.com/archive/articles/52385用于单词到文本的转换器和
答案2
我终于找到了用于脚本文档解析的完美工具,它就是 apache-tika,它可以将无数非文本格式解析为文本,非常酷!
从此处获取 Apache Tika:
(Mac Homebrew 用户brew install tika
:)
命令行界面的工作方式如下:
tika --text something.docx > something.txt
答案3
艾比沃德可以通过命令行在它知道的任何文件格式之间进行转换。
从 Word 转换为纯文本:
abiword --to=txt myfile.doc
从 Word 文件制作 PDF:
abiword --to=pdf myfile.doc
等等。这些情况下的结果将是 myfile.txt 或 myfile.pdf。如果您想指定输出名称,也可以这样做:
abiword --to=txt --to-name=output.txt myfile.doc
将 ODT 转换为 Word:
abiword --to=doc myfile.odt
将 Word 转换为 ODT:
abiword --to=odt myfile.doc
公平地说,其他答案应该注意的是,AbiWord 使用 wvWare 来处理 Word 文档,但即使wvWare 主页建议在大多数转换中使用 AbiWord。
我讨厌文字处理器。这是我安装 AbiWord 的主要原因。
你也可能对此有兴趣反卷积,这是一个类似的工具,支持 OpenOffice 所知道的格式(包括电子表格等),但我个人没有使用过它。
答案4
你可以使用杯子(虚拟打印机)并使用 ld。