Иморт txt в odt через bash

Как правильно задавать вопросы Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа. Общая рекомендация по составлению тем: 1. Для начала воспользуйтесь поиском форума. 2. Укажите версию ОС вместе с разрядностью. Пример: LM 19.3 x64, LM Sarah x32 3. DE. Если вопрос касается двух, то через запятую. (xfce, KDE, cinnamon, mate) 4. Какое железо. (достаточно вывод inxi -Fxz в спойлере (как пользоваться спойлером смотрим здесь)) или же дать ссылку на hw-probe 5. Суть. Желательно с выводом консоли, логами. 6. Скрин. Просьба указывать 2, 3 и 4 независимо от того, имеет ли это отношение к вопросу или нет. Так же не забываем об общих правилах Как пример вот
Аватара пользователя

Автор темы
madesta
Сообщения: 1988
Зарегистрирован: 11 июн 2017, 21:47
Решено: 28
Откуда: BY
Благодарил (а): 79 раз
Поблагодарили: 425 раз
Контактная информация:

Иморт txt в odt через bash

#1

03 июн 2019, 16:48

Существует ли способ импорта содержимого файла txt (в кодировке UTF-8) в файл Libre Office (odt) через bash или какую-либо другую команду?
Содержание odt значения не имеет, он может быть и пустым.
В результате желательно было бы на выходе получить файл odt с текстом из файла txt.

Связано с "хотелками" по автоматизации.

Решение Ара Магеддон » 03 июн 2019, 18:02
darkfenix писал(а):
03 июн 2019, 16:53
Самое простое что придумал cat file.txt > file.odt
Не, так оно не работает :D

Вот тут в первом же ответе все есть: https://askubuntu.com/questions/998167/ ... e-terminal
То есть, командой типа libreoffice --convert-to odt document.txt

Перейти к ответу ➙

Аватара пользователя

rogoznik
Сообщения: 10015
Зарегистрирован: 27 июн 2017, 13:36
Решено: 128
Откуда: Нижний Тагил
Благодарил (а): 776 раз
Поблагодарили: 1950 раз
Контактная информация:

Иморт txt в odt через bash

#2

03 июн 2019, 16:53

Самое простое что придумал

Код: Выделить всё

cat file.txt > file.odt
ИзображениеИзображение

Аватара пользователя

Ара Магеддон
Сообщения: 583
Зарегистрирован: 08 дек 2018, 01:08
Решено: 18
Благодарил (а): 37 раз
Поблагодарили: 141 раз

Иморт txt в odt через bash

#3

03 июн 2019, 18:02

darkfenix писал(а):
03 июн 2019, 16:53
Самое простое что придумал cat file.txt > file.odt
Не, так оно не работает :D

Вот тут в первом же ответе все есть: https://askubuntu.com/questions/998167/ ... e-terminal
То есть, командой типа libreoffice --convert-to odt document.txt

Аватара пользователя

rogoznik
Сообщения: 10015
Зарегистрирован: 27 июн 2017, 13:36
Решено: 128
Откуда: Нижний Тагил
Благодарил (а): 776 раз
Поблагодарили: 1950 раз
Контактная информация:

Иморт txt в odt через bash

#4

03 июн 2019, 18:11

Ара Магеддон писал(а):
03 июн 2019, 18:02
Не, так оно не работает :D
А так хотелось :-D
ИзображениеИзображение

Аватара пользователя

Автор темы
madesta
Сообщения: 1988
Зарегистрирован: 11 июн 2017, 21:47
Решено: 28
Откуда: BY
Благодарил (а): 79 раз
Поблагодарили: 425 раз
Контактная информация:

Иморт txt в odt через bash

#5

03 июн 2019, 22:56

Ара Магеддон писал(а):
03 июн 2019, 18:02
Вот тут в первом же ответе все есть: https://askubuntu.com/questions/998167/ ... e-terminal
Прошёл по ссылке, установил пакет wordgrinder.

Всё получилось. Проверял с файлами txt и odt не одинакового содержания. Один из txt в odt, а второй из odt в txt.

Выхлоп по теме:

minter@H-3:~$ wordgrinder -c /home/minter/scripts/temp/proba.txt /home/minter/scripts/temp/proba.odt
wordgrinder: Importing...
wordgrinder: Exporting...
minter@H-3:~$

Аватара пользователя

rogoznik
Сообщения: 10015
Зарегистрирован: 27 июн 2017, 13:36
Решено: 128
Откуда: Нижний Тагил
Благодарил (а): 776 раз
Поблагодарили: 1950 раз
Контактная информация:

Иморт txt в odt через bash

#6

04 июн 2019, 10:15

madesta, а воспользоваться

Код: Выделить всё

libreoffice --convert-to odt file_name.txt
и соответственно

Код: Выделить всё

libreoffice --convert-to txt file_name.odt
ИзображениеИзображение

Аватара пользователя

Автор темы
madesta
Сообщения: 1988
Зарегистрирован: 11 июн 2017, 21:47
Решено: 28
Откуда: BY
Благодарил (а): 79 раз
Поблагодарили: 425 раз
Контактная информация:

Иморт txt в odt через bash

#7

04 июн 2019, 22:19

darkfenix писал(а):
04 июн 2019, 10:15
libreoffice --convert-to txt file_name.odt
Тоже работает. Правда при проверке чисто терминальной командой очень беспокоили предупреждения выхлопа, почему и подумал, что не работает, так как в команду чего-то не включил:

~$ libreoffice --convert-to odt /home/minter/scripts/toSA/initial.txt

(soffice:12510): Gtk-WARNING **: 22:02:53.851: Theme parsing error: gtk.css:3872:45: Missing semicolon at end of color definition

(soffice:12510): Gtk-WARNING **: 22:02:53.851: Theme parsing error: gtk.css:3878:32: '' is not a valid color name


Но ... При применении libreoffice --convert-to odt файл на выходе имеет шрифт Liberation Mono 10, а при wordgrinder - serif 12, что лично для меня смотрится немного как "повприлекательнее". Хотя это лишь дело предпочтений и вкуса. Ниже привожу примеры.

Вид после libreoffice --convert-to
citata4.png
Вид после wordgrinder
citata3.png
Если бы я ещё не был таким тупым и соображал как в параметрах преобразования задать шрифт и его размер ... :cray2:

Аватара пользователя

Ара Магеддон
Сообщения: 583
Зарегистрирован: 08 дек 2018, 01:08
Решено: 18
Благодарил (а): 37 раз
Поблагодарили: 141 раз

Иморт txt в odt через bash

#8

04 июн 2019, 23:25

madesta писал(а):
04 июн 2019, 22:19
Правда при проверке чисто терминальной командой очень беспокоили предупреждения выхлопа
Можно попробовать добавить параметр --headless
madesta писал(а):
04 июн 2019, 22:19
как в параметрах преобразования задать шрифт и его размер ...
А это уже "фронт работы" для скриптов libreoffice.

Аватара пользователя

Автор темы
madesta
Сообщения: 1988
Зарегистрирован: 11 июн 2017, 21:47
Решено: 28
Откуда: BY
Благодарил (а): 79 раз
Поблагодарили: 425 раз
Контактная информация:

Иморт txt в odt через bash

#9

05 июн 2019, 16:29

Ара Магеддон писал(а):
04 июн 2019, 23:25
Можно попробовать добавить параметр --headless
В терминале предупреждения исчезли:

minter@H-3:~$ soffice --headless --convert-to odt /home/minter/scripts/toSA/initial.txt
convert /home/minter/scripts/toSA/initial.txt -> /home/minter/initial.odt using filter : writer8
minter@H-3:~$

Закрыто

Вернуться в «Программирование, скриптинг, виртуализация»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя