Como seguimiento a mi pregunta anterior , reinstalé mis MacPorts y quiero probar su nueva versión de bash nuevamente.
Instalé el bash más reciente a través de MacPorts en mi sistema Mac OS X 10.6.8, pero cuando inicio una sesión de Terminal.app, el comando "sh --version" mostró que todavía estaba usando el viejo bash 3.2.48. Esto es incluso cuando "which bash" apunta al nuevo 4.2.37 instalado por MacPorts.
Intenté cambiar las preferencias de Terminal.app para usar el nuevo bash como predeterminado, cambié / etc / shells y utilicé el comando chsh para especificar el bash de MacPorts como predeterminado. Sin embargo, ninguno de estos métodos tuvo éxito. ¿Qué me estoy perdiendo? Muchas gracias.
which bash
muestra que el shell más nuevo pero está ejecutando el anterior es que el shell se inicia mediante la ruta absoluta (/ bin / bash) y no obedece la ruta. Lo que no importaría de todos modos, ya que la ruta no está configurada para incluir MacPorts hasta que se ejecute .bashrc.Respuestas:
sh --version
es probablemente lo mismo que/bin/sh --version
. Si el shell actual es bash, puede ver su versión conecho $BASH_VERSION
. Si cambia el shell de inicio de sesión predeterminado con chsh, puede mantener el shell predeterminado de Terminal como el shell de inicio de sesión.sudo port install bash
/opt/local/bin/bash
a/etc/shells
chsh -s /opt/local/bin/bash
echo $BASH_VERSION
fuente
echo $SHELL
indica más claramente qué shell se está ejecutando.