Windows file names can be really frustrating, so I found a script on the web that recurses a directory and replaces every space it finds with an underscore. Good stuff.
IFS=’
‘
#rename direcotories
for (( i=0; i<=j ; i++ )); do
for name in `find -mindepth $i -maxdepth $i -iname "* *" -printf "%p\n"`; do
newname=`echo "$name" | tr " " "_"`;
echo "$name" "$newname";
mv "$name" "$newname";
done;
done
#rename files
for name in `find ./ -iname "* *" -printf "%p\n"`; do
newname=`echo "$name" | tr " " "_"`
echo "$name" "$newname"
mv "$name" "$newname"
done