Kebanyakan distribusi Linux mengkonfigurasi prompt Bash untuk terlihat seperti ini username @ hostname: direktori $
. Tetapi Anda dapat mengkonfigurasi prompt Bash untuk memuat apa pun yang Anda suka, dan bahkan memilih warna apa pun yang Anda suka.
Langkah-langkah contoh di sini dilakukan pada Ubuntu 16.04 LTS. Prosesnya harus sama pada distribusi Linux lainnya, meskipun prompt dan pengaturan Bash default dalam file .bashrc mungkin sedikit berbeda.
Konfigurasi prompt Bash Anda disimpan di file .bashrc akun pengguna Anda, yang pada ~ / .bashrc
. Jadi, jika nama pengguna Anda bob, file tersebut berada /home/bob/.bashrc
.
Anda dapat membuka file untuk melihat variabel Bash saat ini. Kami akan menggunakan nano sebagai editor teks contoh kami, meskipun Anda juga bisa menggunakan vi, emacs, atau editor teks lain yang nyaman bagi Anda. Buka Terminal dan jalankan:
nano ~ / .bashrc
Gulir ke bawah ke PS1 =
bagian. Variabel pertama terlihat agak rumit karena menyertakan informasi warna - kami akan menjelaskannya nanti. Variabel kedua, tanpa informasi warna, berbunyi sebagai berikut:
$ debian_chroot: + ($ debian_chroot) \ u @ \ h: \ w \ $
Ini masih agak rumit karena $ debian_chroot: + ($ debian_chroot)
bit. Ini hanya memberitahu Bash untuk memberi tahu Anda jika Anda menggunakan lingkungan chroot Debian dan biasanya tidak akan ditampilkan. Mengabaikan itu, inilah struktur default dari variabel prompt Bash:
\ u @ \ h: \ w \ $
\ u
menunjukkan nama pengguna Anda, @
menunjukkan tanda @, \ h
menunjukkan nama host (nama komputer), :
menunjukkan: karakter, \ w
menunjukkan direktori kerja, dan \$
menunjukkan $ jika Anda adalah akun pengguna biasa atau # jika Anda root. Jadi, mengumpulkan semuanya, Anda dapatkan nama pengguna @ hostname: working_directory $
.
Untuk mengubah prompt Bash Anda, Anda hanya perlu menambahkan, menghapus, atau mengatur ulang karakter khusus dalam variabel PS1. Tetapi masih banyak lagi variabel yang dapat Anda gunakan daripada yang standar.
Tinggalkan editor teks untuk nano saat ini, tekan Ctrl + X untuk keluar. Kami akan menunjukkan kepada Anda cara bereksperimen dengan variabel sebelum benar-benar menulis yang baru ke file .bashrc Anda.
Konfigurasi prompt Bash Anda disimpan dalam variabel PS1. Untuk menyimpan isi variabel PS1 ke dalam variabel baru, jalankan perintah berikut:
DEFAULT = $ PS1
Anda sekarang dapat mengatur variabel PS1 ke nilai yang berbeda untuk bereksperimen. Sebagai contoh, baris pertama di sini akan mengatur prompt Anda ke prompt "user $" dasar, sementara yang kedua akan mengatur prompt Anda ke "user: working_directory $" prompt.
PS1 = "\ u \ $" PS1 = "\ u: \ w \ $"
Jika Anda ingin kembali ke prompt default Anda, jalankan saja perintah berikut.
PS1 = $ DEFAULT
Bash akan dikembalikan ke prompt defaultnya berkat fakta bahwa Anda menyimpan pengaturan default tadi. Perhatikan bahwa perubahan apa pun yang Anda lakukan di sini hanya sementara untuk sesi Bash saat ini, sehingga Anda selalu dapat keluar dan masuk kembali atau menutup dan membuka kembali jendela terminal untuk kembali ke prompt default Anda. Tetapi baris di atas memungkinkan untuk dengan mudah kembali ke prompt Bash default Anda tanpa perlu keluar atau menutup jendela.
Anda dapat menambahkan karakter atau teks ke variabel. Jadi, untuk awalan prompt default dengan "Hello World", Anda bisa menggunakan:
PS1 = "Hello World \ u @ \ h: \ w \ $"
Sekarang setelah Anda memiliki dasar-dasar bawah, Anda hanya perlu tahu apa semua karakter khusus. Anda mungkin tidak akan peduli tentang banyak dari ini, tapi inilah daftar lengkap seperti yang muncul di manual Bash:
\Sebuah
\ d
\ D format
\ e
\ h
\ H
\ j
\ l
\ n
r
\ s
\ t
\ T
\@
\SEBUAH
\ u
\ v
\ V
\ w
\ W
\!
\#
\$
\ nnn
\\
\[
\]
Jadi, jika Anda ingin menambahkan tanggal dan waktu ke prompt Bash Anda dan menempatkan direktori kerja pada perintah pada baris kedua, Anda bisa menggunakan konstruksi berikut:
PS1 = "[\ d \ t] \ u @ \ h \ n \ w \ $"
Tanda kurung siku di sini tidak diperlukan sama sekali, tetapi membantu memecahkan masalah secara visual dan membuat garis lebih mudah dibaca. Seperti yang telah kami bahas sebelumnya, Anda dapat menambahkan teks atau karakter normal apa pun ke variabel yang Anda sukai, jadi silakan gunakan apa pun yang sesuai untuk Anda.
Ada satu lagi trik hebat yang harus Anda ketahui: Anda dapat menambahkan output dari setiap perintah ke prompt. Setiap kali muncul prompt, Bash akan menjalankan perintah dan mengisi informasi saat ini. Untuk melakukan ini, sertakan saja perintah yang ingin Anda jalankan di antara dua perintah '
karakter. Itu bukan tanda kutip — itu aksen yang serius, yang muncul di atas tombol Tab pada keyboard Anda.
Sebagai contoh, katakanlah Anda ingin melihat versi kernel Linux pada prompt. Anda bisa menggunakan garis seperti berikut:
PS1 = "\ u @ \ h pada 'uname -s -r' \ w \ $"
Sebagai contoh lain, katakanlah Anda ingin melihat waktu aktif sistem dan rata-rata beban, seperti yang ditampilkan oleh waktu aktif
perintah. Anda bisa menggunakan konstruksi berikut, yang menempatkan uptime pada barisnya sendiri sebelum sisa prompt.
PS1 = "('uptime') \ n \ u @ \ h: \ w $"
Jangan ragu untuk bereksperimen dengan karakter dan perintah khusus yang berbeda untuk menyusun prompt perintah ideal Anda.
Setelah Anda menemukan prompt yang disukai, Anda dapat menambahkan warna ke dalamnya. Ini sebenarnya sangat sederhana, tetapi itu membuat variabel terlihat sangat berantakan dan rumit jika Anda tidak mengerti apa yang Anda lihat.
Misalnya, variabel prompt warna default dari sebelumnya adalah:
$ debian_chroot: + ($ debian_chroot) \ [\ 033 [01; 32m \] \ u @ \ h \ [\ 033 [00m \]: \ [\ 033 [01; 34m \] \ w \ [\ 033 [00m \] \ $
Atau, hapus bit debian_chroot sekali lagi:
\ [\ 033 [01; 32m \] \ u @ \ h \ [\ 033 [00m \]: \ [\ 033 [01; 34m \] \ w \ [\ 033 [00m \] \ $
Ini sebenarnya hanya \ u @ \ h: \ w $
variabel dari sebelumnya, tetapi dengan informasi warna. Sungguh, kita bisa memecahnya menjadi beberapa bagian:
\ [\ 033 [01; 32m \]\ u @ \ h \ [\ 033 [00m \]: \ [\ 033 [01; 34m \]\ w \ [\ 033 [00m \]\$
Bagian pertama adalah \ u @ \ h
bit, didahului oleh informasi warna yang mengubahnya menjadi hijau. Yang kedua adalah :
karakter, didahului oleh informasi warna yang menghilangkan pewarnaan apa pun. Yang ketiga adalah \ w
bit, didahului oleh informasi warna yang mengubahnya menjadi biru. Yang keempat adalah \$
bit, didahului oleh informasi warna yang menghilangkan pewarnaan apa pun.
Setelah Anda memahami cara membuat tag warna sendiri, Anda dapat menambahkan warna apa pun yang Anda suka ke bagian mana pun dari prompt Bash yang Anda sukai.
Inilah yang perlu Anda ketahui: Anda harus menyertakan seluruh kode warna informasi antara\[
dan \] karakter
s. Di dalam tag, Anda harus memulai dengan baik \033[
atau \ e [
untuk menunjukkan kepada Bash bahwa ini adalah informasi warna. Kedua \033[
dan \ e [
lakukan hal yang sama. \ e [
lebih pendek jadi mungkin lebih nyaman digunakan, tetapi kami akan menggunakannya \033[
di sini karena cocok dengan apa yang digunakan secara default. Di akhir tag, Anda harus mengakhirinya m \
untuk menunjukkan akhir dari label warna.
Memecahnya, inilah yang setiap tag warna akan terlihat. Satu-satunya perbedaan adalah informasi yang Anda tambahkan sebagai pengganti COLOR untuk menentukan warna sebenarnya:
\[\033[WARNAm \]
Bash memungkinkan Anda mengubah warna teks latar depan, menambahkan atribut seperti "tebal" atau "garis bawah" ke teks, dan mengatur warna latar belakang.
Berikut adalah nilai untuk teks latar depan:
Misalnya, karena teks ungu adalah kode warna 32, Anda akan menggunakan \[\033[32m \]
untuk teks ungu.
Anda juga dapat menentukan atribut untuk teks. Atribut ini harus ditambahkan sebelum nomor warna, dipisahkan oleh titik koma (;). Teks dengan atribut ini akan terlihat berbeda di emulator terminal yang berbeda.
Berikut adalah nilai untuk atribut teks:
Anda sebenarnya tidak perlu menyertakan atribut teks normal. Itu standarnya.
Misalnya, karena teks merah adalah kode 31 dan teks tebal adalah kode 1, Anda akan menggunakan \[\033[1;31m \]
untuk teks merah tebal.
Anda juga dapat menentukan warna latar belakang, tetapi Anda tidak dapat menambahkan atribut ke warna latar belakang.
Berikut nilai-nilai untuk warna latar belakang:
Misalnya, karena latar belakang biru adalah kode 44, \[\033[44m \]
akan menentukan latar belakang biru.
Anda dapat menentukan tag warna latar depan dan latar belakang. Misalnya, 42 mewakili latar belakang hijau dan 31 mewakili teks merah. Jadi, untuk membuat prompt default menjadi teks merah pada latar belakang hijau, Anda akan menggunakan:
PS1 = "\ [\ 033 [42m \] \ [\ 033 [31m \] \ u @ \ h: \ w \ $ "
Kami hanya menentukan satu warna latar belakang dan kemudian satu warna teks latar depan di sini, yang dimulai pada awal perintah dan diterapkan ke semua teks dalam prompt.Namun, Anda dapat menentukan tag warna sebanyak yang Anda inginkan dalam variabel untuk mewarnai bagian yang berbeda dari prompt Anda namun Anda suka.
Warna teks latar belakang dan latar depan terus melewati prompt kecuali Anda menetapkan kode warna 00 menghapus informasi warna. Anda juga dapat menggunakan tag ini dalam variabel untuk me-reset pemformatan kembali ke default di suatu tempat di prompt Anda. Misalnya, baris berikut akan mengakhiri semua pewarnaan sebelum \$
karakter.
PS1 = "\ [\ 033 [42m \] \ [\ 033 [31m \] \ u @ \ h: \ w \ [\ 033 [00m \] \ $ "
Setelah Anda selesai bereksperimen dengan warna, Anda harus memiliki prompt Bash yang Anda sukai di sesi saat ini. Tetapi Anda mungkin ingin membuat prompt baru itu permanen sehingga secara otomatis digunakan di semua sesi Bash Anda.
Untuk melakukan ini, Anda hanya perlu mengubah isi dari variabel PS1 dalam file .bashrc, yang kita lihat sebelumnya.
Buka file .bashrc di editor teks pilihan Anda, seperti:
nano ~ / .bashrc
Gulir ke bawah dan temukan bagian PS1 =. Ganti saja variabel default dengan variabel yang Anda sesuaikan. Anda mungkin ingin meninggalkan $ debian_chroot: + ($ debian_chroot)
bit saja, namun mereka tidak akan muncul kecuali Anda berada di lingkungan chroot.
Masukkan variabel PS1 berwarna Anda di bawah jika ["$ color_prompt" = ya]; kemudian
baris. Masukkan variabel tanpa warna di bawah lain
baris.
Simpan file dan tutup editor teks Anda. Misalnya, untuk menyimpan file di nano, tekan Ctrl + O, tekan Enter, lalu tekan Ctrl + X untuk keluar.
Saat berikutnya Anda memulai shell Bash baru - misalnya, dengan masuk di terminal atau dengan membuka jendela terminal baru - Anda akan melihat permintaan khusus Anda.