Cara menukar prompt bash

Cara menukar prompt bash

"Prompt Bash" pada antara muka baris arahan adalah sedikit teks yang mendahului arahan anda. Biasanya nama pengguna diikuti oleh nama hos di kebanyakan sistem, jadi sintaks mungkin kelihatan seperti pengguna@linuxconfig $ sebagai contoh. Cukuplah untuk mengatakan, baris perintah bash lalai pada banyak sistem linux agak minimum.

Seperti yang akan kita lihat dalam artikel ini, ia dapat diubah dengan mudah dengan mengubah suai bash Ps n pembolehubah, dan kami boleh memasukkan maklumat seperti masa paparan, beban, bilangan pengguna yang menggunakan sistem, uptime dan banyak lagi. Dalam tutorial ini, anda akan melihat cara merapikan prompt bash anda dengan warna dan maklumat tambahan pada sistem Linux.

Dalam tutorial ini anda akan belajar:

  • Apakah pembolehubah shell PS1 dan PS2
  • Cara membuat shell tersuai
  • Apakah watak yang boleh kita gunakan untuk menyesuaikan arahan shell
Cara menukar prompt bash Keperluan Perisian dan Konvensyen Talian Perintah Linux
Kategori Keperluan, konvensyen atau versi perisian yang digunakan
Sistem Mana -mana distro Linux
Perisian Shell bash
Yang lain Pengetahuan minimum mengenai kerang bash. Akses istimewa ke sistem linux anda sebagai akar atau melalui sudo perintah.
Konvensyen # - Memerlukan arahan Linux yang diberikan untuk dilaksanakan dengan keistimewaan akar sama ada secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah
$ - Memerlukan arahan Linux yang diberikan sebagai pengguna yang tidak layak

Pembolehubah prompt bash




Sama seperti yang lain pada sistem Linux, begitu juga dengan prompt bash juga disesuaikan. Kita dapat melaksanakan tugas dengan mengubah nilai bash PS1, PS2, PS3, dan PS4 pembolehubah. Untuk menjaga perkara yang mudah, artikel ini akan bimbang hanya dengan dua yang pertama. Menggunakan echo perintah untuk melihat nilai semasa mereka:
$ echo "pembolehubah PS1 Bash:" $ ps1 $ echo "pembolehubah PS2 Bash:" $ ps2 
PS1 dan PS2 Bash Prompt

Pemboleh ubah segera bash ps1

PS1 adalah pemboleh ubah segera utama. Kami sekarang:

\ [\ e] 0; \ u@\ h: \ w \ a \] $ debian_chroot:+($ debian_chroot) \ [\ 033 [01; \]: \ [\ 033 [01; 34m \] \ w \ [\ 033 [00m \] \ $ 

Ini kelihatan sedikit mengelirukan, kerana banyaknya digunakan untuk menetapkan warna yang anda lihat dalam tangkapan skrin di atas. Takeaway di sini adalah penggunaan watak bash khas \ u (Pengguna), \ h (nama host), dan \ w (direktori kerja semasa). Jenis -jenis watak ini adalah apa yang membolehkan kita memaparkan maklumat tersuai yang akan berubah dengan keadaan dalam prompt bash. Lebih banyak daripada mereka akan dilindungi di bawah.

Pemboleh ubah segera bash ps2

PS2 Pembolehubah shell bash adalah prompt sekunder, dan biasanya ditetapkan >. Prompt ini dipaparkan jika shell menunggu beberapa input pengguna, contohnya jika anda menggunakan tanda petikan dan lupa untuk menutupnya.

Teks $ echo "dengan petikan yang hilang> 
Rajah prompt linux bash

Bash Watak Khas

Prompt Bash boleh disesuaikan dengan menggunakan watak khas. Berikut adalah gambaran ringkas tentang watak -watak yang paling banyak digunakan dan maknanya:



Bash Watak Khas
Bash Watak Khas Penjelasan watak khas bash Bash Watak Khas Penjelasan watak khas bash
\ a watak loceng ASCII (07) \ d Tarikh dalam format "tarikh bulan minggu" (e.g., "26 Mei")
\] menamatkan urutan watak yang tidak dicetak \ e watak melarikan diri ASCII (033)
\ h nama tuan rumah hingga yang pertama '.' \ H nama tuan rumah
\ j Bilangan pekerjaan yang dikendalikan oleh shell \ l Nama asas nama peranti terminal shell
\ n baris baru \ r Kembalinya Pengangkutan
\ s Nama shell, nama base $ 0 (bahagian mengikuti final
slash)
\ t Masa sekarang dalam format HH: mm: mm: ss 24 jam
\ T Masa semasa dalam format HH 12 jam: mm: SS \@ Masa semasa dalam format AM/PM 12 jam
\ A Masa semasa dalam format HH: 24 jam: mm \ u nama pengguna pengguna semasa
\ v versi bash (e.g., 2.00) \ V pelepasan bash, versi + patchelvel (e.g., 2.00.0)
\ w Direktori kerja semasa \ W nama asas direktori kerja semasa
\! bilangan sejarah arahan ini \# nombor arahan arahan ini
\ $ Sekiranya uid berkesan adalah 0, a #, jika tidak $ $ \ nnn watak yang sepadan dengan nombor oktal nnn
\\ A backslash \ [ Mulakan urutan aksara yang tidak dicetak, yang boleh digunakan untuk menanamkan a
urutan kawalan terminal ke dalam petunjuk
\ D format Formatnya diserahkan kepada strftime (3) dan hasilnya dimasukkan
ke dalam rentetan segera; Format kosong menghasilkan masa yang khusus
perwakilan. Pendakap diperlukan

Penyesuaian Prompt Bash

Selepas pengguna log masuk ke dalam sistem, pembolehubah persekitaran pengguna diasaskan dari pelbagai fail:

  • /etc/profil atau /etc/bashrc (sistem lebar)
  • ~/.BASH_PROFILE , ~/.BASH_LOGIN , ~/.profil , ~/.Bashrc atau ~/.BASH_LOGOUT (khusus pengguna)
ADAKAH KAMU TAHU?
Penting untuk mengetahui bahawa semua pembolehubah persekitaran pengguna mempunyai masa hidup yang sama dengan sesi terminal. Apabila sesi terminal ditutup pembolehubah pengguna termasuk pembolehubah shell bash yang ditakrifkan semasa sesi terminal dikosongkan dan sekali lagi ditakrifkan semula apabila sesi terminal baru dibuat.

Di bahagian di bawah, kami akan menentukan dua pembolehubah untuk membuktikan pernyataan ini.

Menyesuaikan arahan pembolehubah Bash demi langkah

Kami sekarang akan mengedit ~/.Bashrc Fail Konfigurasi Untuk memaparkan arahan bash tersuai. Seperti yang disebutkan di atas, kita perlu logout sesi terminal semasa kami dan log masuk semula untuk melihat perubahan yang berlaku atau hanya menggunakan sumber Perintah seperti yang ditunjukkan di bawah.

  1. Gunakan nano atau editor teks lain untuk mengedit ~/.Bashrc fail. Sebagai alternatif, kita boleh echo tetapan shell baru ke dalam fail.
    $ echo "ps1 = 'prompt bash baru saya@\\ t: \\ w \\ $'" >> ~/.Bashrc 



  2. Membuat perubahan berkuat kuasa dengan yang berikut sumber perintah.
    $ sumber ~/.Bashrc 
  3. Anda kini harus melihat arahan baru:
    Prompt Bash baru saya@16: 42: 58: ~ $ 
    Prompt Bash yang disesuaikan di Linux

Menukar warna depan dan latar belakang Warna Prompt

Lihat jadual di bawah untuk pelbagai warna yang digunakan untuk menukar latar belakang dan latar depan shell bash:

Warna Nombor latar depan Nombor latar belakang
Hitam 30 40
Merah 31 41
Hijau 32 42
Coklat 33 43
Biru 34 44
Ungu 35 45
Cyan 36 46
Kelabu cerah 37 47

Untuk menukar warna prompt bash anda, sintaks berikut digunakan:

Eksport PS1 = '\ [\ e [KOD WARNAm \] [contoh] \ [\ e [0m \] $ ' 
  • \ e [ = Menandakan permulaan mod warna
  • Colorm = Nombor warna yang dikehendaki, diikuti oleh m
  • \ e [0m = Menandakan berakhirnya mod warna

Beberapa contoh, menggunakan sintaks ini, boleh dilihat di bawah.



Contoh segera

  1. Ganjaran bash merah:
    Eksport ps1 = "\ e [31m [contoh] \ e [0m $" 
  2. Ganjaran bash ungu:
    Eksport PS1 = "\ e [35m [Contoh] \ e [0m $" 
    Pelbagai contoh prompt bash di linux. Menyesuaikan diri seperti yang diperlukan untuk memenuhi keperluan anda
  3. Paparkan masa semasa dalam prompt bash:
    Eksport PS1 = "\ u@\ h \ t: \ $" 
  4. Prompt bash ini memaparkan bilangan fail dan direktori semasa dalam direktori semasa.
    Eksport ps1 = "\ u@\ h [\ $ (ls | wc -l)]: \ $" 

Pemikiran penutupan




Dalam tutorial ini, kami melihat cara menukar prompt bash dalam antara muka baris arahan pada sistem linux. Bukan sahaja ini boleh menjadikan terminal baris arahan kami kelihatan lebih baik, tetapi kami juga boleh menggunakan watak khas Bash untuk memaparkan banyak maklumat berguna. Jangan ragu untuk menyesuaikan beberapa contoh kami dengan keperluan anda sendiri, jadi anda boleh mendapatkan prompt bash yang bagus dengan beberapa maklumat yang berguna pada masa yang sama.

Tutorial Linux Berkaitan:

  • Cara menggunakan arahan uptime di linux
  • Berapa kerap anda perlu reboot pelayan Linux anda?
  • Perkara yang hendak dipasang di Ubuntu 20.04
  • Pengenalan kepada Automasi, Alat dan Teknik Linux
  • Menguasai Gelung Skrip Bash
  • Perkara yang perlu dilakukan setelah memasang ubuntu 20.04 Focal Fossa Linux
  • Mint 20: Lebih baik daripada Ubuntu dan Microsoft Windows?
  • Sistem Hung Linux? Cara melarikan diri ke baris arahan dan ..
  • Perintah Linux Asas
  • Cara menukar nama hos di linux