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.