Me encuentro con que tengo un conjunto de documentos en formato odf, concretamente odt y ods, en los que me gustaría hacer una simple modificación: pongamos que quiero cambiar en todos ellos “NOMBRE_CLIENTE” por “El Cliente”.
Para ello basta con utilizar un simple script que dice así:
#!/bin/bash # # modifica_odf 0.1 - GPL # (c) Guimi # http://guimi.net # # Ult. mod: Guimi 2009-06 # #################################### tmpdir="tmp.$$" # Hacemos un bucle para tratar todos los odf del directorio for x in `ls *.od?` do # Mostramos info echo "Modificando $x..." # Descomprimimos el odf en un directorio temporal unzip -q $x -d $tmpdir cd $tmpdir # Realizamos las modificaciones necesarias en styles.xml sed 's/NOMBRE_CLIENTE/El Cliente/g' styles.xml > tmp.xml mv tmp.xml styles.xml # Realizamos las modificaciones necesarias en content.xml sed 's/NOMBRE_CLIENTE/El Cliente/g' content.xml > tmp.xml mv tmp.xml content.xml # Borramos el fichero temporal tmp.xml rm tmp.xml # Regeneramos el odf zip -rq9 ../$x * # Salimos y borramos el directorio temporal cd .. rm -r $tmpdir done
edición de ficheros odf desde prompt, edición masiva de ficheros odf, modificar ficheros odt ods odp odf
Gaspar says:
Creo que hay un problema en la línea referente al mv del content.xml; sería:
mv tmp.xml content.xml
no?
Güimi says:
Sí Gaspar. Gracias.
Ya he corregido la errata.
Un saludo.