El 8 de marzo de 2009 1:55, Abilio Almeida Eiroa <[email protected]>escribió:
> > > El 8 de marzo de 2009 1:42, Gonzalo Rivero <[email protected]>escribió: > > 2009/3/7, Francisco Javier Aravena Jimenez <[email protected]>: >> > hola a todos esperando que se encuentren todos muy bien. >> > mi consulta es sencilla >> > es posible con algún comando pasar los nombre de los archivos de un >> > directorio de mayusculas a minusculas..??? >> > >> > es que tengo directorios llenos de archivos que necesito en >> > minusculas... >> > >> > se puede ? >> > desde ya muchas gracias. es para modo texto, no tiene entorno grafico.. >> >> algún comando directo, no se, pero "man tr" + este hilo >> http://lists.debian.org/debian-user-spanish/2009/02/msg01396.html que >> se trató el mes pasado te pueden dar ideas para hacer un script con mv >> >> >> -- >> To UNSUBSCRIBE, email to [email protected] >> with a subject of "unsubscribe". Trouble? Contact >> [email protected] >> >> Francisco, perdón, antes te respondí a tu mail, lo que te decía para que > quede en la lista es esto: > > > Hombre pues para pasar todos los archivos de un directorio a minúsculas > tienes esto: > > $ ls |awk '{printf "mv %s %s\n", $1, tolower($1)}' | sh (esto pasa > directorios y archivos a minúscula) > > Que si lo quieres rebuscar para que solo te pase a minúsculas podrías hacer > algo así: > > $ ls -l | grep ^d | cut -d' ' -f8 | awk '{printf "mv %s %s\n", $1, > tolower($1)}' | sh (esto solo directorios) > > Añado también en la lista una opción con find para solo directorios: > > $ find . -type d | grep / | cut -d/ -f2 | awk '{printf "mv %s %s\n", $1, > tolower($1)}' | sh > > para todos los archivos: > > $ find . -name * | awk '{printf "mv %s %s\n", $1, tolower($1)}' | sh > > Otra forma para todos los archivos es con tr: > > $ ls | while read; do mv "$REPLY" $( echo "$REPLY" | tr "[:upper:]" > "[:lower:]" ); done > > NOTA: Cuidado si copias y pegas con las comillas por el formato. > > Perdón por el mail a tu cuenta personal que te envié. > Se me olvidó exponerte solo el caso para archivos solo, sin pasar los directorios; sería: $ find . -type f | awk '{printf "mv %s %s\n", $1, tolower($1)}' | sh ATENCIÓN: Te lo pongo con "find" y no con "ls" por que es MUCHÍSIMO más fiable. Así que mejor utiliza con find. > -- > aabilio - http://linfox.es > expulsionporagresion.linfox.es > > -- aabilio - http://linfox.es expulsionporagresion.linfox.es

