Sebagai tindak lanjut dari pertanyaan saya sebelumnya , saya menginstal ulang MacPorts saya dan ingin mencoba versi bash yang lebih baru.
Saya menginstal bash terbaru melalui MacPorts pada sistem Mac OS X 10.6.8 saya, tetapi ketika saya memulai sesi Terminal.app, perintah "sh --version" menunjukkan bahwa saya masih menggunakan bash 3.2.48 yang lama. Ini bahkan ketika "bash yang" menunjuk ke 4.2.37 yang lebih baru diinstal oleh MacPorts.
Saya mencoba mengubah preferensi Terminal.app untuk menggunakan bash baru sebagai default, mengubah / etc / shells, dan menggunakan perintah chsh untuk menentukan MacPorts bash sebagai default. Namun, tidak satupun dari metode ini yang berhasil. Apa yang saya lewatkan? Terima kasih banyak.
which bash
menunjukkan shell yang lebih baru tetapi Anda menjalankan yang lebih lama adalah bahwa shell diluncurkan oleh path absolut (/ bin / bash) dan tidak mematuhi path. Lagipula tidak masalah, karena jalur tidak disetel untuk memasukkan MacPorts hingga .bashrc dijalankan.Jawaban:
sh --version
mungkin sama dengan/bin/sh --version
. Jika shell saat ini adalah bash, Anda dapat melihat versinyaecho $BASH_VERSION
. Jika Anda mengganti shell login default dengan chsh, Anda dapat menyimpan shell default Terminal sebagai shell login.sudo port install bash
/opt/local/bin/bash
ke/etc/shells
chsh -s /opt/local/bin/bash
echo $BASH_VERSION
sumber
echo $SHELL
menunjukkan lebih jelas shell mana yang sedang berjalan.