Інструмент для перегляду файлів LibreOffice Writer у вікні терміналу


18

Я використовую пару файлів документації у .odtформаті LibreOffice ( ). Зазвичай я отримую доступ до них, звичайно, з LibreOffice Writer. Але бувають випадки, коли я можу підключитися до сайту лише текстовим терміналом.

Мені цікаво, чи є на базі терміналу інструмент, який може показати мені вміст цих файлів у приблизному правильному форматі? (Файли в основному містять простий текст, списки куль і кілька таблиць 1x1, тому щодо форматування це відносно прості речі.)

PS Це питання не полягає у запуску самого LibreOffice з командного рядка (про який йдеться тут ).



3
Не в оригінальній відповіді, але ви можете використовувати odt2txt document.odt | lessдля прямого перегляду файлу.
pLumo

@RoVo Це підходить для відповіді! Було б цікаво, чи odt2txtхороша така робота libreoffice --convert-to( як я б очікував, що вона буде працювати дуже добре, не намагаючись її широко). Останній (наскільки я дізнався) не в змозі записати в stdout, так що трубопроводи, на жаль, не доступні для нього. Caveat: Якщо ви просто швидко хочете переглянути (або шукати!) Вміст вашого документа і, можливо, не надто переймаєтесь форматуванням, odt2txt | …це шлях. Ще дозволяйте libreofficeконвертувати ваш документ, як пояснено нижче.
десерт

2
Здається, прості документи добре перетворені з обома інструментами. На жаль, таблиці не перетворюються на таблиці ascii ...
pLumo

Відповіді:


21

Існує інструмент називається , odt2txtякий може конвертувати odtв txt.

Порівняно з libreoffice, я бачу дві переваги:

  • Легка вага, якщо у вас немає встановлення свободи (наприклад, на сервері)
  • Він може друкувати в stdout для прямого перегляду файлів.

Установка:

sudo apt install odt2txt

Тоді ви можете безпосередньо переглянути odt:

odt2txt document.odt | less

Якщо ви хочете конвертувати у файл, просто перенаправляйте висновок за допомогою odt2txt document.odt > fileабо використовуйте --output=fileпараметр.
десерт

21

libreofficeнадає --convert-toпараметр, який може бути використаний для перетворення документа, наприклад, у текст або html:

  • перетворити input.odtна input.txt:
    libreoffice --convert-to "txt:Text (encoded):UTF8" input.odt

  • перетворити кожен .odtіз поточного каталогу у .html:
    libreoffice --convert-to "html:XHTML Writer File:UTF8" *.odt

  • перетворити кожен .odsіз поточного каталогу у .csv:
    libreoffice --convert-to csv *.ods

Вихід може бути відкритий за допомогою пейджера або терміналу браузера вподобаного: less, mostабо w3mперерахувати тільки три.


Приємно! Чи можете ви використовувати це для відображення версії txt безпосередньо в терміналі замість запису у файл?
Шайба

На жаль, не дивіться мого коментаря вище .
десерт

12

У LibreOffice є --catваріант, який існує у версії 5.1, але не 4.2. Не точно впевнений, коли він був представлений.

libreoffice --cat "Untitled 1.odt" --headless | less

Для отримання додаткової інформації:

libreoffice --help

Прикро, що цей корисний варіант не зафіксований libreofficeні на сторінці сайту , ні на help.libreoffice.org/Common/… , однак принаймні libreoffice -hперелічує його.
десерт
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.