Alors, vous voulez remplacer les choses dans un format spécifique à la marque ? À première vue, ça a l'air mauvais, mais le nouveau docx
le format est un peu mieux pour ça que l'ancien doc
format, car il s'agit en fait d'un fichier ZIP contenant XML
fichiers.
La réponse réside donc dans le décompressage, puis vous devrez fouiller dans les fichiers et déterminer sur lequel appeler sed
et refermez-le.
Consultez le fichier word/document.xml
dans le fichier ZIP.
essayez ce 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
et appelez le script comme suit :
./repdocx FILE_NAME OLD_STRING NEW_STRING