I am trying to set my account to default to ksh and not bash, because I have been working with ksh for years. I su to root and use moduser for the account to change the shell and I see it changes in /etc/passwd.
However, I do not find the file that used to be $HOME/.profile which is executed by default when i login, so I can set my environment. which environment file is executed when I login using ksh and can automatically execute my environment set up?
The default shell for all Linux distributions is Bash. Bash can do most of what Ksh'93 can do and a lot more. If you use Linux, it's probably best to get used to Bash. What exactly are you missing? As far as I know, Linux does not ship with a .profile file, but nothing stops you from creating one.
Agree with Dude. ksh is archaic compared to bash. And needs to be installed manually as it is not a default installed shell as far as I recall.
If you are using Linux, then bash is kind of a mandatory thing to use (all shell scripts for Linux kernels in all distros are bash).
Personally - have used ksh for many years on HP-UX and found bash a refreshing change when that o/s was replaced here with Linux. On the odd Solaris server I use, I also request that bash be made available as other shells are kind of inferior.
As far as I know, all commercial Unix distributions other than Linux use the Borne shell and some use the Korn'88 shell. The ksh93 shell is usually a free alternative. The reason to use the Korn shell can sometimes be rather trivial, such as having the up arrow key for command history, and editing like "set -o emacs", aliases or setting the command prompt. For a shell script beginner, the different shells or lack of a shell standard can be confusing or a show stopper. The Korn'88 shell was never available for Linux and I think its free Pdksh alternative as of Enterprise Linux 6 has been discontinued.