#! /bin/bash
# blank-rename.sh
#set -x
# Substitutes underscores for blanks in all the filenames in a directory.

ONE=1                     # For getting singular/plural right (see below).
number=0                  # Keeps track of how many files actually renamed.
FOUND=0                   # Successful return value.

for filename in *         #Traverse all files in directory.
do
	echo "$filename" | egrep -q " |\|\+\-"         #  Check whether filename
	if [ $? -eq $FOUND ]                   #+ contains space(s).
	then
	fname=$filename                      # Strip off path.
	n=`echo $fname | sed -e "s/[ |+-]/_/g"`   # Substitute underscore for blank.
	mv "$fname" "$n"                     # Do the actual renaming.
	let "number += 1"
	fi
done   

if [ "$number" -eq "$ONE" ]                 # For correct grammar.
then
	echo "$number file renamed."
else 
	echo "$number files renamed."
fi 

exit 0
