rendered paste body#!/bin/bashfunction usage{ echo "usage: ucwords [-i] | [-t] | [-h]" echo ""; echo "Use -i for interactive - Asks before changes"; echo "Use -t for test mode - Changes nothing";}testmode=interactive=while [ "$1" != "" ]; do case $1 in -i | --interactive ) interactive=1 testmode= echo -e "\033[1mInteractive Mode - Asks before changes\033[0m\n" ;; -t | --testmode ) testmode=1 interactive= echo -e "\033[1mTest Mode - Nothing will be changed\033[0m\n" ;; -h | --help ) usage exit ;; * ) usage exit 1 esac shiftdonefind . -type d | sort -r | while read dir; do old=$(basename "$dir"); dir=$(dirname "$dir"); new=$(echo "$old" | perl -pe 's/((?:^|\W)\w)/\U$1/g'); if [ "$new" != "$old" ]; then renameit= looped=1 echo "looped" itsok=1 echo "$dir/$old ==> $dir/$new"; if [ "$interactive" != "" ]; then echo -n -e "\033[1mRename? (y/n)\033[0m > " read </dev/tty renameit if [ "$renameit" != "y" ]; then itsok= fi fi if [ "$testmode" != "" ]; then itsok= fi if [ "$itsok" == "1" ]; then mv "$dir/$old" "$dir/lolkuber"; mv "$dir/lolkuber" "$dir/$new"; fi fidoneecho "$looped"if [ "$looped" == "" ]; then echo -e "\033[1mFound nothing to change!\033[0m"fi