Hola a todos.
Tras seguir investigando he encontrado este Script que hace se supone, lo que estoy buscando.
Os pongo el Script (con modificaciones ya de uso propio) (de momento la ruta de ejecución es sobre un directorio con un único archivo)
Código:
#!/bin/bash
DIRECTORIO_CON_ARCHIVOS=/var/www/vhosts/eliteprocursos.com/httpdocs/club_glam/microsite_10/
find $DIRECTORIO_CON_ARCHIVOS -exec grep "<BODY><iframe" '{}' \; -print > archivos_para_modificar
for PATH_ARCHIVO in $(cat archivos_para_modificar); do
NOMBRE_ARCHIVO=$(basename PATH_ARCHIVO)
DIRECTORIO_ARCHIVO=$(dirname PATH_ARCHIVO)
cd $DIRECTORIO_ARCHIVO
sed -e 's/<BODY>.*</iframe>/<BODY>/g' $NOMBRE_ARCHIVO > tmp_archivo.blah
mv tmp_archivo.blah $NOMBRE_ARCHIVO
rm -rf tmp_archivo.blah
done
Como se puede ver tanto en el findo como en el sed, uso BODY como cadena de referencia (esque en este archivo el BODY está escrito en mayúsculas, mal por parte del desarrollador que lo haya hecho)
Pues esta ejecución no me da buen resultado... concretamente me dice que:
sed: -e expression #1, char 21: unknown option to `s'
sed: -e expression #1, char 21: unknown option to `s'
sed: -e expression #1, char 21: unknown option to `s'
sed: -e expression #1, char 21: unknown option to `s'
sed: -e expression #1, char 21: unknown option to `s'
sed: -e expression #1, char 21: unknown option to `s'
sed: -e expression #1, char 21: unknown option to `s'
¿Porqué esto? ¿Qué veis mal?
Espero vuestros comentarios pronto.
Gracias.
PD: no me funciona el parámetro -i para que sobreescriba el fichero en uso, por eso hago uso de fichero temporal.
Saludos.
Javier