我想将所有.odt
.doc
.xls
.pdf
个文件转换为.txt
个文件。
我想使用shell脚本或perl脚本将这些文件转换为文本文件
答案 0 :(得分:23)
有一个针对odt文件和类似的程序:
odt2txt - 可在回购中使用。
答案 1 :(得分:11)
$ unoconv --format=txt document1.odt
应该生成document1.txt。
答案 2 :(得分:2)
OpenOffice有一个内置的文档转换器,能够处理一堆格式 - 看看unoconv:http://dag.wieers.com/home-made/unoconv/
话虽这么说,过去我有一些麻烦 - 如果你遇到麻烦,请看看AbiWord(另一个开源文字处理器)的类似程序。
答案 3 :(得分:1)
这当然可以做到这一点,尽管OO项目及其文档中存在一些奇怪且难以理解的东西,这使得这样的事情难以研究和遵循。但是,OO能够转换所有这些类型,而不仅仅是OO原生类型,它可以通过两种不同形式的自动控制来实现。
这是两种一般方法。
您可以启动OO并告诉它执行一个宏,它为您执行给定文件的这项工作。然后,您只需编写宏和脚本来循环文件。语法类似于
$ oowriter -headless filename macro://dir/Standard.Module1.sMySub
OO的另一件事是网络API。这是基于一个名为UNO的东西。
$ oowriter -accept = accept-string
Notifies the OpenOffice.org software that upon the creation of
"UNO Acceptor Threads", a "UNO Accept String" will be used.
您需要某种客户端库。我认为他们至少有一个用于Python。使用此技术,Python程序或其他一些带有OO客户端库的脚本语言可以驱动程序并转换所有文件。由于OO读取MSO,它应该能够完成所有这些操作。
答案 4 :(得分:1)
对于word文档,你可以尝试antiword
,至少在linux上。它是一个命令行实用程序,它将word文档作为参数,并将该文档中的文本(尽可能最好)吐出到标准输出。也许你也可以指定一个输出文件。我不记得它是如何工作的细节。我有一段时间没用过它。不确定它是否可以处理OO文件。
答案 5 :(得分:0)
对于Microsoft格式,请查看wvWare tools。
答案 6 :(得分:0)
在LibreOffice中打开文件。单击“文件”,“另存为”向下滚动以找到文本选项。单击该按钮,它将保存为文本文件。
仅供参考,我有一个* .ODT文件,大小为339.2 KB。当我另存为文本时,文件大小缩小为仅5.0 KB。将文件另存为文本文件的另一个原因。
答案 7 :(得分:-1)
通常在libre office中打开.ods文件
突出显示要转换的文字
打开终端
运行vi
按"我"获得插入模式
按ctrl-shift-v
完成!
需要一些格式化吗?
将文件另存为
离开vi
执行命令
$ cat |列> filename2
这在opensuse中运行KDE
代替" kwrite"对于" vi",如果你想要