Cambiar nombre a todos los archivos de un arbol

Cristian Othon Martinez Vera cfuga en itam.mx
Mie Abr 5 17:18:05 CDT 2000


On Wed, 5 Apr 2000, Fernando Barajas wrote:

> Necesito cambiar la "extensión" de varios archivos en todo un arbol de
> subdirectorios.  Esto es, los archivos se llaman genericamente "*.JPG" y
> quiero cambiarlos a "*.jpg", pero en todo un arbol, incluyendo los
> subdirectorios.  Estoy usando Linux PPP 6.1
> 
> Intente:  mv -r *.JPG *.jpg
> 
> pero no se dejó, pues me dice que cuando mueves varios archivos, el destino
> debe ser un directorio.
> 
> Alguna sugerencia?

Solucion muy sencilla en bash (cambia a minusculas la extension JPG):

for i in *.JPG
 do
   variable = "${i%*.JPG}"
   mv $i ${variable}.jpg
 done

Solucion bastante robusta en sh + echo + tr (pone todo el archivo
en minusculas, no solo la extension. Extraido del Tips-HOWTO)

for x in `ls`
 do
  if [ ! -f $x ]; then
     continue
  fi
  lc=`echo $x | tr '[A-Z]' '[a-z]'`
  if [ $lc != $x ]; then
     mv -i $x $lc
  fi
 done

						Saludos
-- 
 (o- Cristian Othon Martinez Vera <cfuga en itam.mx>  Pulchrum est paucorum
//\     http://eniac.rhon.itam.mx/~cfuga/          hominum.
v_/_


-- 
Para desuscribirse, mande correo a: ayuda-unsubscribe en linux.org.mx
Para comandos adicionales, envíelo a: ayuda-help en linux.org.mx




Más información sobre la lista de distribución Ayuda