Terminal.app memiliki pengaturan untuk memilih dengan shell yang digunakannya, dan pengaturan default adalah "Shell login default (/ usr / bin / login)".
Apa perbedaan antara / usr / bin / login dan / usr / bin / bash?
Terminal.app memiliki pengaturan untuk memilih dengan shell yang digunakannya, dan pengaturan default adalah "Shell login default (/ usr / bin / login)".
Apa perbedaan antara / usr / bin / login dan / usr / bin / bash?
Jawaban:
Griffo benar. Sekarang dalam skenario Anda, perbedaannya adalah sebagai berikut:
/bin/login
, maka program ini akan memeriksa dalam database pengguna apa shell default Anda dan menjalankan shell itu sebagai shell login, dengan demikian memanggil file rc yang dijalankan hanya ketika shell dijalankan sebagai shell login (dalam kasus bash mereka adalah /etc/profile
, ~/.bash_profile
, ~/.bash_login and
, dan ~/.profile
./bin/bash
, shell itu akan dieksekusi sebagai shell login, terlepas dari shell apa yang diatur dalam database pengguna. Ini bisa berguna ketika shell di database pengguna tidak berfungsi dengan baik, atau Anda ingin dapat menggunakan shell yang berbeda.Sesuai komentar oleh Chris Page , shell dijalankan sebagai shell login dalam kedua kasus.
Jika Anda belum mengubah shell login Anda dari default, yaitu /bin/bash
, dan Anda belum mengubah file rc shell ini, maka perbedaannya tidak akan terlihat.
/usr/bin/emacs
itu akan dipanggil sebagai proses login. (Nama proses diawali dengan -
.) Saya baru saja mencoba ini dengan baik versi Leopard dan Lion Terminal.
/usr/bin/login
adalah program yang digunakan untuk masuk ke sistem dan bukan sesuatu yang Anda panggil secara manual dalam keadaan normal. Lihatlah info / halaman manual dengan mengeluarkan salah satu dari perintah berikut:
info login
atau man login
/usr/bin/bash
adalah shell dan tugasnya adalah menginterpretasikan input dari pengguna dan menjalankan program. Anda juga dapat melihat lebih banyak info tentang bash dengan menggunakan perintah di bawah ini:
info bash
atau man bash
/usr/bin/login
untuk membuat sesi terminal. Preferensi hanya mengontrol apakah ia memberitahulogin
untuk menggunakan shell default Anda atau perintah kustom. Jika Anda melihat jendela Inspektur untuk terminal aktif Anda akan melihat daftar Proses Menjalankan selalu dimulai denganlogin
diikuti oleh shell default atau perintah kustom.