El otro día estuve intentando cambiar la extensión de un montón de archivos a .htm y pase un buen rato tratando de hacer un script que lo hiciera automáticamente, pero no hubo forma (si, soy un gañan programando, tengo un montón de info sobre el tema, pero no me he puesto en serio con ello). Por ello, me ha parecido interesante colocar aquí estas ordenes para realizar dicha tarea desde la shell (las encontré aquí):
Change extension from .php to .html:
- find . -name ‘*.php’ > php_files.txt
- for x in `cat php_files.txt`; do mv $x `echo $x | sed ’s/\(.*\.\)php/\1html/’` ; done
Change .gif links to .jpg within html files:
- find . -name ‘*.html’ > html_files.txt
- for x in `cat html_files.txt`; do cat $x | sed -e ’s/.gif/.jpg/g’ < $x > $x.new; done
Now you have to remove .new extension:
- find . -name ‘*.new’ > new_files.txt
- for x in `cat new_files.txt`; do mv “$x” “`echo $x | sed -e ’s/.new//g’`” ; done
This removes extension .new and and leaves the updated as .html with new jpg links in place.
PD: estoy en Windows y no me aparecen los acentos… 😮 (los que aparecen son gracias al corrector de FFox). Me esta dando mal royo, así que voy a desconectarme y revisar el sistema…
Otro post interesante que trata de este asunto; esta vez para eliminar una frase inicial del nombre de muchos archivos:
ls | sed -rn “s/the brand new heavies – we won’t stop – (.*)/mv \”&\” \”\1\” / p” | sh
LikeLike