arg="-i"
if [ "$1" = "-f" ]; then
arg="-f"
shift
fi
dir=$1
[ -d $dir ] || exit 1
dir=`echo "$dir" | sed 's/\/$//'`
for filename in `ls $dir`; do
if expr "$filename" : '.*[A-Z]' >/dev/null; then
rename=`echo "$filename" | tr 'A-Z' 'a-z'`
if [ $arg = "-i" ]; then
echo -n "Do you rename $filename to $rename [y/n]?(n) "
read answer
if [ "$answer" = "y" -o "$answer" = "Y" ]; then
mv -i $dir/$filename $dir/$rename
fi
else
mv -i $dir/$filename $dir/$rename
fi
fi
done
$ touch A B
$ ./rename.sh .
Do you rename A to a [y/n]?(n) y
Do you rename B to b [y/n]?(n) y
$ ls
a b rename.sh