Ho installato bash 4 con Homebred e bash --version
mi mostra la versione 4.
Se ho il seguente script di test:
#!/usr/local/bin/bash
# test-version.sh
echo $BASH_VERSION
E renderlo eseguibile chmod +x configurer.sh
ed eseguirlo ./test-version.sh
Ho anche la versione 4.
Ma se lo eseguo con il comando sh
sh test-version.sh
ottengo la versione 3.
Ho messo la nuova shell in /etc/shells
:
sudo bash -c 'echo /usr/local/bin/bash >> /etc/shells'
E cambiato nella nuova shell:
chsh -s /usr/local/bin/bash
Ho anche cambiato il percorso in iTerm Settings > Profili > Comando su /usr/local/bin/bash
.
Grazie!
EDIT: ho capito che è bene lasciare sh
da solo. Quando vuoi eseguire script con Bash 4 non utilizzare sh
.