Este script sólo cambia el nombre a los ficheros del directorio activo
for fichero in *.html
do
nombre=$(bsasename $fichero .html)
mv $fichero $nombre.xhtml
done
|
Para cambiarlo en toda la rama de directorios:
for fichero in $(find . -name "*.html" -type f)
do
dir=$(dirname)
nombre=$(bsasename $fichero .html)
mv $fichero $dir/$nombre.xhtml
done
|
Una forma de procesar todos los ficheros de una rama del árbol de directorios es 'for fichero in $(find . -name "*.html" -type f)', donde "fichero" va tomando la ruta relativa de cada uno de los ficheros encontrados.
Este ejemplo puede servir como base para un script que realice ciertas copias de seguridad.