I have the following directories in my home directory,
my scripts
dbmig es
ms_done
my-home
I want my output to look like the following
MyScripts
DbmigEs
MsDone
MyHome
Basically, I want to get rid of spaces,special characters and convert the first letter of each word to uppercase and the rest to lowercase
I'd suggest PERL for the case minipulations in particular. Or bash (string - BASH - Make the first Letter Uppercase - Stack Overflow):
$ bash -c 'z=xxx ; echo "${z^}"'
Xxx
$
or zsh (http://www.linuxquestions.org/questions/programming-9/bash-change-first-character-to-upper-case-570445/\):
$ role="operator"
$ echo "${(C)role}"
Operator
$