my MAC is getting hair-wired after I change console to ksh, and change it back again to /bin/bash
-
the console prompt is now static bash-3.2 regardless current directory I am in. Meanwhile in .bash_profile I have set # modify console
export PS1=”\W > “ -
rake gem and few others in Ruby are missing, although it was reinstalled again after I run bundle install , but there are subsequent strange issue, e.g. rake command does not hit the right rake file..
Any idea?
Thanks a lot.
The .bash_profile is only run by bash when you first log in. (It only gets run by Terminal if you have Terminal set up to make each shell a “login shell”). If you have commands that you want to get run every time you fire up bash, even if it’s not a login shell, you should put them in .bashrc instead. But you can always make a shell be a login shell by running
bash --logininstead of justbash.Not sure where your ksh comes from, but note that it doesn’t understand ‘\W’ etc in the prompt string, so I would expect you to get a literal ‘\W’ in the prompt instead of the expanded working dir. If you’re running ksh as a login shell, it’s probably something in the .profile (or /etc/profile, etc.). ksh doesn’t have an exact equivalent of .bashrc, but if $ENV is set to a filename after the profile runs, that file is executed as well (even on non-login shells, if ENV is already set when the shell starts). Ksh, of course, ignores .bash_profile and .bashrc.
Since there’s no ref to gems in the body of your question (anymore?), you might want to change the question and remove the Ruby tag…