如何“cat”或“less”一个libreoffice作家.odt文件?

是否有一种方法可以使用。或者less的.odt文件,就像antiword对.doc文件一样?

解决方案是使用odt2txt 。 现在,这个命令由两个不同的包提供,即一个名为odt2txt包可以安装

 sudo apt-get install odt2txt 

并且由unoconv包(它提供更多libreoffice格式之间的命令行转换),由安装

 sudo apt-get install unoconv 

如果你有两个,你可以使用替代机制在它们之间切换:

 sudo update-alternatives --config odt2txt 

如果您使用的是odt2txt包提供的odt2txt那么您只需使用

 odt2txt file.odt 

如果使用unoconv提供的包你必须使用

 odt2txt --stdout file.odt 

将它们管理到less以获得更少的体验( odt2txt file.odt | less

请注意,如果不使用--stdout选项,则unoconv提供的包将把结果写入名为file.txt的文件中。

分发的建议包似乎是odt2txt包中的一个(它在备用系统中具有更高的默认优先级); 肯定它的依赖性较小。

您可以浏览文本而无需任何特殊实用程序。 ODT文件是一个重命名的zip存档。 解压缩它,你会看到几个文件。 其中之一, content.xml包含所有文本, less可读。

odt2txt file.odt

源代码和compilebale工作zip可以在这里下载:

https://github.com/dstosberg/odt2txt/

或者由sudo apt-get install odt2txt

你不能catlessmore的.odt文件,因为它是一个二进制文件。 它实际上 – 如前所述 – 是一个重命名的.zip存档,所以你必须提取content.xml文件,但是,正如它所暗示的那样,它是一个XML文档,所以你必须这样处理它以提取信息它