Лабораторная работа 1 "Автоматическое редактирование документа в формате odt средствами shell ос unix"
Скачать 48.01 Kb.
|
ФАКУЛЬТЕТ КОСМИЧЕСКИЙ КАФЕДРА К-3 МФ Лабораторная работа №1 “Автоматическое редактирование документа в формате ODT средствами shell ОС UNIX”
Москва 2021 Задача Средствами OpenOffice создать документ формата Open Document небольшого объёма. Предусмотреть в документе поля (отмеченные, например, текстом особого вида), предназначенные для автоматизированного изменения. Пользуясь архиватором unzip, развернуть файл odt и изучить его структуру. Найти местоположение предусмотренных для редактирования полей и определить порядок команд, необходимых для поиска и изменения этих полей. Пользуясь редактором sed, выполнить изменение значений полей. Пользуясь архиватором zip, получить обратно файл odt. Загрузить файл в OpenOffice и убедиться в том, что: документ нормально обрабатывается в OpenOffice; в предусмотренных полях произошла замена содержимого. На shell разработать скрипт, выполняющий вышеприведённую последовательность действий автоматически. Решение задачи Создадим файл test.odt Привет, меня зовут NAME. Я учусь в UNIVERSITY. Я живу в городе CITY. Заменяемые поля выделены прописным шрифтом. Распакуем test.odt: unzip test.odt После этого в директории появятся: content.xml – файл, содержащий основной контент документа; manifest.rdf; meta.xml – содержит метаданные файла; mimetype; settings.xml; styles.xml – содержит большинство информации о стилях. И следующие директории: Configurations2 – содержит дополнительные директории. META-INF – содержит файл manifest.xml, который хранит список всех файлов в пакете, а также информацию, необходимую для расшифровки файлов; Thumbnails – хранит эскиз исходного файла в виде thumbnail.png Создадим файл, содержащий скрипт: #!/bin/bash unzip $1 -d Dir sed -i 's/NAME/Алина/; s/UNIVERSITY/МФ МГТУ им. Н.Э. Баумана/; s/CITY/Москва/;' ./Dir/content.xml cd Dir zip -r ../replace_$1 * cd .. rm -r Dir Запустим скрипт: ./myscript.sh test.odt После выполнения команды сформируется файл new_test.odt, имеющий следующее содержание: Привет, меня зовут NAME. Я учусь в UNIVERSITY. Я живу в городе CITY. |