Ubah shell saya ke versi bash yang berbeda di / usr / local / bin / bash?

15

Bagaimana cara mengatur /usr/local/bin/bash(versi 4.2 yang memungkinkan pelengkapan 'cd ke direktori dengan nama direktori') menjadi bash default saya untuk jendela baru alih-alih versi reguler (v3.2.48) saya.

Saya bisa mengetik /usr/local/bin/bashdan masuk ke dalamnya tapi itu bukan default untuk jendela Terminal baru yang saya inginkan.

Michael Durrant
sumber
1
Apakah ini yang Anda cari? apple.stackexchange.com/questions/7984/...
bmike
Tidak, ini tentang menentukan shell baru sepenuhnya (kemungkinan versi terbaru dari shell bash), bukan hanya tentang mengubah menggunakan bash.
Jason Salaz
Oh yeah - terima kasih telah menggali cara menambahkan shell khusus ke daftar yang dipercaya oleh OS.
bmike

Jawaban:

18

Saya tidak tahu apakah ini akan mengisi di terminal / lokasi akun pengguna tingkat lanjut, tetapi "Cara Ini Telah Berhasil Selama bertahun-tahun" ™ di Linux-land adalah Anda harus memperbarui /etc/shellsdengan jalur ke lokasi shell, dan kemudian gunakan chsh -s /usr/local/bin/bash usernameuntuk Gunakan.

Hanya menjalankan chshtanpa modifikasi /etc/shellsakan menyebabkan kesalahan yang menunjukkan Anda telah memilih shell yang tidak valid, jika Anda penasaran.

/etc/shellsadalah file yang dimiliki oleh root, jadi Anda harus menggunakan sudo bersama editor untuk memodifikasinya. Saya harap Anda nyaman melakukan itu, kalau tidak saya akan sangat menyarankan untuk tidak mencoba shell non-default :).

Ringkasan (langkah):

  • brew install bash, kemudian
  • sudo vi /etc/shellsdan tambahkan /usr/local/bin/bashke daftar, lalu
  • chsh -s /usr/local/bin/bash [your_username] dan restart terminal Anda agar perubahan Anda terjadi
Jason Salaz
sumber
17

1) pergi ke "System Preferences"> "Users & Groups"

2) klik ikon gembok dan otentikasi

3) klik kanan ikon untuk pengguna Anda dan pilih "Opsi Lanjutan ..."

4) ubah nilai untuk "Login shell" dari "/ bin / bash" ke shell yang Anda inginkan

masukkan deskripsi gambar di sini

nama pengguna
sumber
ini tidak bekerja untuk saya hari ini (3 tahun kemudian) tetapi di bawah ini saya beralih menerima.
Michael Durrant