¿Hay alguna manera de cat
o less
un archivo .odt al igual antiword
que para los archivos .doc?
¿Hay alguna manera de cat
o less
un archivo .odt al igual antiword
que para los archivos .doc?
La solución está usando odt2txt
. Ahora, este comando lo proporcionan dos paquetes diferentes, uno llamado odt2txt
que puede instalar con
sudo apt-get install odt2txt
y por el paquete unoconv
(que ofrece también conversiones de línea de comandos entre más formatos de libreoffice), que es instalado por
sudo apt-get install unoconv
Si tiene los dos, puede cambiar entre ellos utilizando el mecanismo alternativo :
sudo update-alternatives --config odt2txt
Si está utilizando lo odt2txt
proporcionado por el paquete odt2txt
que acaba de utilizar
odt2txt file.odt
si usa el unoconv
paquete provisto, debe usar
odt2txt --stdout file.odt
Conéctelos less
para tener una experiencia menos parecida ( odt2txt file.odt | less
)
Tenga en cuenta que si no utiliza la --stdout
opción, el paquete proporcionado por unoconv escribirá el resultado en un archivo llamado file.txt
.
El paquete sugerido por la distribución parece ser el del odt2txt
paquete (tiene una prioridad predeterminada más alta en el sistema alternativo); seguro tiene menos dependencias.
odt2txt
paquete y se comporta como debería.unoconv
, como he descubierto, es que quiere instalar una versión anterior de Libre Office si tiene una nueva instalada. Por lo tanto, quédate consudo apt install odt2txt
.update-alternatives
, gracias.Puede navegar por el texto sin ninguna utilidad especial. El archivo ODT es un archivo zip renombrado. Descomprímalo y verá varios archivos. Uno de ellos,
content.xml
contiene todo el texto y esmore
oless
legible.fuente
odt2txt file.odt
El código fuente y el zip de trabajo compilebale se pueden descargar aquí:
https://github.com/dstosberg/odt2txt/
o instalado por
sudo apt-get install odt2txt
fuente
No se puede
cat
oless
omore
un archivo .odt porque es un archivo binario. En realidad, como se dijo anteriormente, es un archivo .zip renombrado, por lo que debe extraer elcontent.xml
archivo, pero eso, como implica, es un documento XML, por lo que debe procesarlo como tal para extraer la información de él.fuente