Страницы

Поиск по вопросам

четверг, 2 января 2020 г.

Массовая смена автора документа

#linux #bash #office #open_office #libre_office


Подскажите как быть)

Предыстория: 

У друга на работе уволился админ и на компе, буха, юрика
и самого директора, изменил пользователя на Х%Й Булыжников или Пися
Камушкин - не суть)
Но обнаружили это через неделю или две, когда открыли документы doc,
odt,xsl  и прочие офисные, нажали файл - Свойства и там увидели сие
чудо) а файлы они эти куда-то шлют и там через эту процедуру, даты
сверяют в случае чего,)


Как можно массово такие офисные файлы перевладеть (сменить или убрать автора)?)

Руками долго (создать новый док, перекинуть все в него и сохранить - их
там сотни документов) естественно, теперь Пользователь нормальный, но
документы некоторые остались с пасхалкой)))

Подскажите, как под linux  или windows  можно автоматически поменять.

Думаю что скриптом можно, но не пойму как работать с api или самой libreOffice  из
консоли

Спасибо...

p.s. как выяснилось - админа очень обидели... и потом поняли что не
правы, но было поздно)

Конвертировать в другой формат, в надежде смены автора так же безсмысленно

libreoffice -env:UserInstallation=file:///home/firefedot/.config/libreoffice-alt
--headless --convert-to odt *.doc


В итоге остался тот же автор создания документа и те же авторы изменений.
    


Ответы

Ответ 1



Спасибо @Qwertiy за подсказку. В общем пока что вариант такой нашел. Сначала приводим все нужные файлы к типу odt, таким образом libreoffice -env:UserInstallation=file:///home/firefedot/.config/libreoffice-alt --headless --convert-to odt *.doc Затем можно скриптом, а можно и руками, делаем так. Распаковывем наш файл ODT в папку unzip file.odt -d folder После этого ищем и заменяем нужного/ненужного автора grep NONAMES meta.xml --color # Или если не знаем имени, то grep creator meta.xml --color И мы увидим нужное нам, оно будет подсвечено) Заменяем все что нужно sed -i 's/NONAMES/MyName/g' meta.xml Затем, мы приводим завершающие действия. Запаковываем все обратно, в два этапа, для правильной структуры нового файла 1: cd folder zip -0 -X file.odt mimetype 2: zip -r file.odt * -x mimetype После этого файл открывается без ошибки и если открыть меню Файл-Свойства, мы увидим того автора,которого внесли. Осталось проверить как это все работает именами файлов содержащие пробелы. p.s. если @Qwertiy возражает, то могу все это передать ему в ответ.

Ответ 2



Odt-файл - это zip-архив. Надо его распаковать как zip-архив, найти, в каком месте там находится имя пользователя, поменять и упаковать обратно. Аналогично с docx (но не doc). PS: Делал так с vsdx.

Комментариев нет:

Отправить комментарий