Jika Anda menghabiskan banyak waktu di baris perintah, kemungkinan besar Anda ingin menyesuaikan lingkungan shell Anda. Ini bisa berarti membuat alias, menambahkan direktori baru ke $PATH
, atau mengubah tampilan prompt shell.
Anda mungkin telah menemukan beberapa tutorial di mana mereka mengatakan untuk meletakkan konfigurasi Anda di .bashrc
, .bash_profile
atau file konfigurasi lain yang dibaca dan dieksekusi oleh bash shell.
Pada artikel ini, kita akan berbicara tentang file startup Bash dan perbedaan antara .bashrc
dan .bash_profile
file.
Login Interaktif dan Shell Non-Login #
Saat dipanggil, Bash membaca dan menjalankan perintah dari sekumpulan file startup. File apa yang dibaca tergantung pada apakah shell dipanggil sebagai login interaktif atau shell non-login.
Shell dapat bersifat interaktif atau non-interaktif.
Secara sederhana, shell interaktif adalah shell yang membaca dan menulis ke terminal pengguna, sedangkan shell non-interaktif adalah shell yang tidak terkait dengan terminal, seperti saat menjalankan skrip.
Shell interaktif dapat berupa shell login atau non-login.
Shell login dipanggil saat pengguna login ke terminal baik dari jarak jauh melalui ssh atau secara lokal, atau saat Bash diluncurkan dengan --login
pilihan. Shell non-login interaktif dipanggil dari shell login, seperti saat mengetik bash
di prompt shell atau saat membuka tab terminal Gnome baru.
File Startup Bash #
Saat dipanggil sebagai shell login interaktif, Bash mencari /etc/profile
file, dan jika file tersebut ada, menjalankan perintah yang tercantum dalam file. Kemudian Bash mencari ~/.bash_profile
, ~/.bash_login
, dan ~/.profile
file, dalam urutan yang terdaftar, dan menjalankan perintah dari file pertama yang dapat dibaca yang ditemukan.
Ketika Bash dipanggil sebagai shell non-login interaktif, Bash membaca dan mengeksekusi perintah dari ~/.bashrc
, jika file itu ada, dan dapat dibaca.
Perbedaan Antara .bashrc dan .bash_profile #
.bash_profile
dibaca dan dieksekusi ketika Bash dipanggil sebagai shell login interaktif, sementara .bashrc
dijalankan untuk shell non-login interaktif.
Gunakan .bash_profile
untuk menjalankan perintah yang harus dijalankan hanya sekali, seperti menyesuaikan $PATH
variabel lingkungan.
Letakkan perintah yang harus dijalankan setiap kali Anda meluncurkan shell baru di .bashrc
mengajukan. Ini termasuk alias dan fungsi Anda, permintaan khusus, penyesuaian riwayat, dan sebagainya.
Biasanya, ~/.bash_profile
berisi baris seperti di bawah ini sumber .bashrc
mengajukan. Ini berarti setiap kali Anda masuk ke terminal, kedua file dibaca dan dieksekusi.
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
Sebagian besar distribusi Linux menggunakan ~/.profile
bukannya ~/.bash_profile
. ~/.profile
file dibaca oleh semua shell, sementara ~/.bash_profile
hanya dengan Bash.
Jika file startup tidak ada di sistem Anda, Anda dapat membuatnya.
Kesimpulan #
.bash_profile
dan .bashrc
adalah file yang berisi perintah shell yang dijalankan saat Bash dipanggil. .bash_profile
dibaca dan dieksekusi pada shell login interaktif, sementara .bashrc
pada shell non-login.
Periksa manual Bash untuk informasi lebih lanjut tentang file startup Bash.
Jika Anda memiliki pertanyaan atau masukan, jangan ragu untuk memberikan komentar.