Réponses:
La solution utilise odt2txt
. Maintenant, cette commande est fournie par deux packages différents, à savoir celui appelé odt2txt
que vous pouvez installer avec
sudo apt-get install odt2txt
et par le package unoconv
(qui offre également des conversions en ligne de commande entre plusieurs formats libresoffice), qui est installé par
sudo apt-get install unoconv
Si vous avez les deux, vous pouvez basculer entre eux en utilisant le mécanisme alternatif :
sudo update-alternatives --config odt2txt
Si vous utilisez le odt2txt
fourni par le package que odt2txt
vous utilisez
odt2txt file.odt
si vous utilisez le unoconv
package fourni, vous devez utiliser
odt2txt --stdout file.odt
Les canaliser less
pour avoir une expérience moins semblable ( odt2txt file.odt | less
)
Notez que si vous n'utilisez pas cette --stdout
option, le package fourni par unconv écrira le résultat dans un fichier appelé file.txt
.
Le paquet suggéré par la distribution semble être celui du odt2txt
paquet (il a une priorité par défaut plus élevée dans le système alternatif); c'est sûr qu'il a moins de dépendances.
unoconv
, comme je l'ai découvert, est qu'il souhaite installer une ancienne version de Libre Office si vous en avez une plus récente. Par conséquent, restez avec sudo apt install odt2txt
.
update-alternatives
, merci.
Vous pouvez parcourir le texte sans aucun utilitaire spécial. Le fichier ODT est une archive zip renommée. Décompressez-le et vous verrez plusieurs fichiers. L'un d'eux, content.xml
contient tout le texte et est more
ou less
lisible.
odt2txt file.odt
le code source et le zip de travail de compilation peuvent être téléchargés ici:
https://github.com/dstosberg/odt2txt/
ou installé par
sudo apt-get install odt2txt
Vous ne pouvez pas cat
ou less
ou more
un fichier .odt car il s'agit d'un fichier binaire. Il s'agit en fait - comme cela a été dit plus tôt - d'une archive .zip renommée, vous devez donc extraire le content.xml
fichier, mais comme cela implique, c'est un document XML, vous devez donc le traiter comme tel pour en extraire les informations.
odt2txt
package et il se comporte comme il se doit.