GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana BASH Shell memuat file konfigurasinya di Linux

BASH Shell akan mencoba memuat beberapa file konfigurasi selama inisialisasi. Ada 2 set file konfigurasi, tergantung itu shell login, atau shell non-login.

  • Saat Anda login ke server pada monitor bare metal, atau melalui SSH, atau dengan # su – [nama pengguna], Anda mendapatkan shell login.
  • Saat Anda memulai shell di terminal dalam sesi yang ada (gnome-terminal, shell di dalam yang lain, atau dengan # su [nama pengguna]…), Anda mendapatkan shell non-login. Skrip shell juga dieksekusi di bawah shell non-login.

Di bawah ini kami akan mengilustrasikan perbedaannya dengan menambahkan beberapa debugging ke dalam file konfigurasi tersebut.

Login shell

Secara default, shell login akan memuat file-file berikut:

# su - test
this is /etc/profile
this is ~/.bash_profile
this is ~/.bashrc
this is /etc/bashrc

Di sini perhatikan ~/.bash_profile file, file secara default memanggil ~/.bashrc , dan ~/.bashrc panggil /etc/bashrc .

Jika karena alasan tertentu BASH tidak menemukan file ~/.bash_profile, itu akan mencari ~/.bash_login alih-alih. Jika lagi ~/.bash_login tidak dapat ditemukan, BASH akan mencari ~/.profile sebagai gantinya.

Dan dalam 2 kasus, ~/.bashrc, dan /etc/bashrc tidak akan dimuat, kecuali jika dipanggil secara eksplisit di ~/.bash_login atau ~/.profile.

Contoh ketika ~/.bash_profile tidak ada:

– Dengan adanya ~/.bash_login, tidak peduli ~/.profile ada atau tidak:

$ su - test
Password: 
this is /etc/profile
This is ~/.bash_login

– Hanya ~/.profile:

# su - test
this is /etc/profile
this is ~/.profile

Shell Non-login

Lebih mudah, BASH hanya memuat ~/.bashrc, dan lagi, panggilan file /etc/bashrc.

# su test
this is ~/.bashrc
this is /etc/bashrc


Linux
  1. Cara Menggunakan Perintah find Linux untuk Menemukan File

  2. Cara Mengubah Shell Default Di Linux

  3. Cara mengubah shell default di Linux

  1. Dasar-dasar Linux:Cara Mengunduh File di Shell Dengan Wget

  2. Bagaimana cara menggunakan perintah Rsync di linux?

  3. Bagaimana menemukan semua file yang jarang di Linux

  1. Cara Menemukan File di Linux Dengan Perintah Temukan

  2. Cara Mengubah Izin File Secara Rekursif di Linux

  3. Bagaimana cara mengganti nama file dengan spasi menggunakan shell Linux?