Para cambiar el nombre de todos los ficheros de un directorio escribimos la siguiente orden :
ls | awk ‘{printf “mv %s %s\n”, $1, tolower($1)}’ | sh
Para cambiar el nombre de todos los ficheros de un directorio escribimos la siguiente orden :
ls | awk ‘{printf “mv %s %s\n”, $1, tolower($1)}’ | sh
Canal RSS de los comentarios de la entrada. URI para TrackBack.
NO me tira me da un error
$ ls | awk ‘{printf “mv %s %s\n”, $1, tolower($1)}’ | sh
bash: error de sintaxis cerca de token no esperado `(‘
comentario por davor — Noviembre 1, 2006 @ 3:11 pm |
Puede que el error te le esté dando por usar las comillas incorrectas antes y después de las llaves. Hay que usar la comilla simple ( ‘ ) no el acento ( ´ ). Dentro del printf van las dobles “.
comentario por Chema — Noviembre 2, 2006 @ 2:26 pm |
¿Coómo podría mover todos los archivos “.dat” de un directorio, independientemente si están en mayúsculas o en minúsculas?
comentario por Alejandro — Noviembre 21, 2007 @ 10:00 am |
Otra forma:
ls | while read; do mv “$REPLY” $( echo “$REPLY” | tr “[:upper:]” “[:lower:]” ); done
Pero esta ultima forma falla si los archivos tienen espacio en blanco.
comentario por Sebastian Narvaez — Mayo 15, 2008 @ 6:33 pm |
Al menos en Debian existe la orden rename.
Por ejemplo, para cambiar de mayúsculas a minúsculas los nombres de varios ficheros:
rename ‘y/A-Z/a-z/’ *
comentario por Debianero — Julio 6, 2009 @ 3:07 pm |