Как заархивировать папку в формат odt
Я извлекаю файл.odt(открытый офис) и делаю с ним некоторые манипуляции. А потом, когда я хочу вернуть файл обратно, у меня возникает проблема.
например, если я вхожу в каталог с распакованным файлом odt, и я делаю что-то вроде этого:
cd /dir/with/uziped/odt
zip -r ../test.odt .
Все работает отлично. Я получил действительный файл открытого офиса, и я могу работать с ним.
Но затем я пробую zip из не корневой папки odt У меня поврежден файл odt, после этой команды:
zip -r test.odt /dir/with/uziped/odt
Так что это не сработает.
"/ dir / with / uziped / odt" включает пару папок и XML-файлы
ОБНОВЛЕНИЕ:
Основная проблема заключается в том, что если я попытаюсь использовать архиватор, а не из корневого каталога, он берет все каталоги в пути с помощью команды:
7z a -tzip tt.odt temp/*
Выход будет:
Compressing temp/Configurations2/accelerator/current.xml
Compressing temp/META-INF/manifest.xml
Compressing temp/Thumbnails/thumbnail.png
Compressing temp/content.xml
Compressing temp/manifest.rdf
Compressing temp/meta.xml
Compressing temp/mimetype
Compressing temp/settings.xml
Compressing temp/styles.xml
но мне не нужно сжимать временный каталог. Мне нужно только добавить все файлы из этого каталога в новый архив, например так:
Compressing Configurations2/accelerator/current.xml
Compressing META-INF/manifest.xml
Compressing Thumbnails/thumbnail.png
Compressing content.xml
Compressing manifest.rdf
Compressing meta.xml
Compressing mimetype
Compressing settings.xml
Compressing styles.xml
1 ответ
Потоковый ввод и вывод zip
почтовый индекс также примет одну черту -
в качестве имени zip-файла, в этом случае он запишет zip-файл в стандартный вывод, что позволяет передать вывод в другую программу.
Например, dd
Программа может записать стандартный вывод в файл в другом месте. В следующем примере dd
записывает стандартный вывод в новый файл с именем test.zip (zip-архив), расположенный на рабочем столе пользователя Дениса.
cd /dir/with/uzipped/odt
zip -r - . | dd of=/home/Denis/Desktop/test.zip
of
набирается после dd
обозначает выходной файл. .
после одной черты обозначается текущий каталог.
Преобразование zip-файла в odt
Поскольку файл.odt структурирован как файл.zip, вы можете просмотреть содержимое файла.odt, переименовав расширение файла в.zip и затем извлекая файлы из архива zip. Если вы сохранили структуру каталогов исходного файла.odt, вы можете преобразовать файл.zip обратно в файл.odt после внесения в него изменений, переименовав расширение файла.zip обратно в.odt.