On 27/08/2010 0:08, RŌNIN wrote:
Hola a tod@s:
Tengo una gran cantidad de archivos ubicados en similar cantidad de directorios (con subdirectorios), y necesito cambiar las extensiones de los archivos, de minúsculas a mayúsculas.
Lo intenté con éste comando:
find /directorio/subdirectorio1/subdirectorio2/ -name "*.jpg" -print -exec mv {} /directorio/subdirectorio1/subdirectorio2/. \;
Y me movió todos los archivos desde los subdirectorios donde se encontraban, a la raíz del subdirectorio2 ... :-S
Luego intenté con:
find /directorio/subdirectorio1/subdirectorio2/ -type f -name '*.jpg;1' | while read filename ; do mv "$filename" "`echo $filename" | sed 's/jpg\;1$/JPG/'` ; done
Y sólo me muestra algo como un indicador para ingresar comandos (> ) ... y hasta ahí :-(
Tienes mal las comillas en el while. Has puesto: while read filename do mv "$filename" "`echo $filename" | sed 's/jpg\;1$/JPG/'` done Fíjate: "`echo $filename" | sed 's/jpg\;1$/JPG/'` Por eso te aparece el >, porque el entrecomillado está mal, debería ser: `echo "$filename" | sed 's/jpg\;1$/JPG/'`
Cansado de no hallar la forma de hacerlo, acudo a su conocimiento y experiencia.
Rafa -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org