antiodt: просмотр документов OpenOffice в виде простого текста
Создано: 18-02-2009 19:51:21 изменено: 21-01-2010 10:17:36  Метки: openoffice
Для тех, кто не любит запускать офисные приложения для того лишь, чтобы просто прочесть файл в формате ворда, есть antiword, есть wv (и unrtf, и pdftotext для RTF и PDF соответственно). Вот только для открытого и всеми любимого ODT (OpenDocument, формат OpenOffice) — такой радости нет. o3read их не берёт.

В общем, запускать мне OpenOffice лениво, в AbiWord тоже не так уж шустр, так что написал себе скрипт-однострочник (antiodt):
#!/bin/sh
unzip -p "$1" content.xml | xmlstarlet sel -N text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" -T -t -m '//text:p' -v . -n | less

Поскольку документ ODT это zip-архив, а внутри весь текст в виде XML лежит в content.xml, то отсавалось только выбрать содержимое текстовых элементов (забив на всё форматирование, кроме разбиения на абзацы). При этом для разбора XML используется утилита xmlstarlet. Все имеющиеся в наличие у меня ODT документы теперь в мгновение ока можно прочитать так:
antiodt документ.odt

antiodt: просмотр документов OpenOffice в виде простого текста
1701 просмотров комментировать