Eliminar espacios en nombre de archivo

Hoy necesité manipular varios centenares de imágenes, todas en una misma carpeta con resoluciones diversas desde mil a más de 4mil pixeles, el plan era dejarlas preparadas para subirlas a una galería web todas a 800px, pero no sobrecargar el hosting con la tarea de redimencionarlas, el segundo inconveniente era que todas las imágenes tenían espacios mayúsculas y minúsculas indeterminadamente, algunos en la extensión, otros en el nombre del archivo, en fin, toda una incomodidad.
la solución: ImageMagick, está disponible para Linux (yum o apt-get install) y para Mac desde imagemagick, bien a través macports (port install ImageMagick) o de un binario para descargar.
Nota: los archivos serán reemplazados por completo, si requieres los originales, lo mejor es contar con una copia.
Así que lo hice a través de un pequeño script bash que comparto con ustedes:
ls -1 | awk '//{system(" mv \"" $0"\"" " " "\""tolower($0)"\"" " ")}' && for f in *; do mv "$f" `echo $f | tr ' ' '-'`; done && ls *.jpg | xargs -I {} convert -thumbnail 800 {} {}