Quindi, vuoi sostituire le cose in un formato specifico per il marchio? A prima vista sembra brutto, ma il nuovo docx
il formato è leggermente migliore rispetto al vecchio doc
format, perché in realtà è un file ZIP contenente XML
file.
Quindi la risposta sta nel decomprimerlo, quindi dovrai rovistare tra i file e capire quale chiamare sed
e chiudilo di nuovo.
Controlla il file word/document.xml
nel file ZIP.
prova questo script:
FILE=$1
RETPATH=`pwd`
rm -rf /var/tmp/docx
mkdir /var/tmp/docx
cp $FILE /var/tmp/docx
cd /var/tmp/docx
mkdir tmp
unzip $FILE -d tmp
cd tmp/word
sed -i "s/${2}/${3}/" document.xml
cd ..
zip -r ../${FILE} *
cp /var/tmp/docx/${FILE} ${RETPATH}
cd $RETPATH
rm -rf /var/tmp/docx
e chiama lo script come segue:
./repdocx FILE_NAME OLD_STRING NEW_STRING