#!/bin/sh
#
# mvtolower - move (rename) all files to their lower-case equivalent name
#

case "$#" in
0)	echo "Usage: mvtolower FileName1 [FileName2] ..." >&2 ; exit 1 ;;
esac

for fname
do
	nname=`dirname "$fname"`
	lname=`basename "$fname" | tr '[A-Z]' '[a-z]'`
	nname="$nname/$lname"
	if [ x"$nname" != x"$fname" -a x"$nname" != x./"$fname" ]
	then
		# lowercase file name is different, but we need a temporary
		# name because mv will see both names as referring to the
		# same file, if we're on a case-insensitive file system
		tnum=$$
		while [ -f "$nname"-$tnum ]
		do
			tnum=`expr $tnum + 1`
		done
		tname="$nname"-$tnum
		mv "$fname" "$tname" && mv "$tname" "$nname"
	fi
done
