I updated unsuccessfully my Bash to 3.2.48 by MacPorts.
It seems that I do not have it active, since I get
echo $BASH_VERSION
3.2.17(1)-release
How can you make the newest Bash active such that I get it for my login shell?
I updated unsuccessfully my Bash to 3.2.48 by MacPorts.
It seems that I do not have it active, since I get
echo $BASH_VERSION
3.2.17(1)-release
How can you make the newest Bash active such that I get it for my login shell?
Run the following code, for instance to change your shell to the newest Bash installed by MacPorts
chsh -s /opt/local/bin/bash
If that gives you the message,
"
non-standard shell
"
you will need to add
/opt/local/bin/bash
to
/etc/shells
Note that /etc/shells is just a text file, so you can edit it directly if you change its permissions. Otherwise, you can edit it too by the command
sudo -s
Password:
# echo /opt/local/bin/bash >> /etc/shells
If your first chsh command failed, run it now again if you managed to change the above file.
I'm guessing it's installed but not being used as your login shell.
You can change the shell using dscl on the command line.
At the dscl prompt type the following:
list Local/Default/Users
read Local/Default/Users/<your username here>
change Local/Default/Users/<your username here> UserShell /bin/bash /opt/local/bin/bash
I have another example of dscl use on my blog if it helps.