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
Redifusión 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