Intro
Kandungan
Feedback

 

Tweaking bash prompt. Langkah pertama anda untuk konfigurasikan linux mengikut selera anda.

Apakah Bash?

Bash berasal daripada Bourne Shell, berasal dari projek GNU iaitu "Bourne Again SHell".

Bash merupakan antaramuka arahan standard kebanyakan sistem linux. Ia merupakan prompt interaktif menyokong command line editing,completion dan recall. Ia juga merupakan prompt yang boleh diubah; ramai yang sedar tetapi tidak ramai yang tahu cara untuk membuatnya.

Apa yang mampu dilakukan oleh Bash prompt?

Kebanyakan sistem linux mempunyai prompt default berwarna perang yang memberikan maklumat tentang nama pengguna dan nama mesin yang digunakan, dan ada juga menunjukkan direktori semasa. Semua ini merupakan maklumat berguna tetapi banyak lagi maklumat boleh ditunjukkan melalui prompt ini seperti nombor tty, masa, tarikh, load, bilangan pengguna, uptime dsb. Prompt juga boleh menggunakan warna ANSI sama ada untuk mencantikkannya ataupun untuk menunjukkan maklumat yang penting. Kita juga boleh memanipulasi bar tajuk dengan maklumat yang berenaan dengan prompt.

Kenapa perlu tweak?

Selain kelihatan hebat, ia juga berguna untuk kesan maklumat sistem. Sesetengah orang yang berkerja dengan banyak sistem boleh membezakan warna antara satu sistem dengan sistem yang lain.

Langkah pertama

Pembolehubah yang biasa digunakan adalah PS1(pembolehubah PS2,PS3,PS4 bisanya tidak digunakan oleh pengguna biasa).Untuk menukar bash prompt pembolehubah PS1 perlulah diubah.Untuk tujuan eksperimen kita boleh terus menaip string PS1 terus pada prompt dan melihat hasilnya serta merta(hanya berkesan untuk sesi semasa dan berubah jika log keluar).

Kaedah:

Cuba taip arahan dibawah ini'

azam@inertz:~> SAVE=$PS1

azam@inertz:~>

azam@inertz:~> PS1=$

$ls

Bash-Prompt-HOWTO.html Documents kde_xp_full qinx-0.5 snapshot1.png

Desktop bashprompt public_html qnxstyle-0.2

$

$PS1="$ "

$ ls

Bash-Prompt-HOWTO.html Documents kde_xp_full qinx-0.5 snapshot1.png

Desktop bashprompt public_html qnxstyle-0.2

$

ini menjadikan ruang antara tanda $ menjadikan ia lebih mudah dibaca

untuk kembali pada asal sila taip:-

$ PS1=$SAVE

azam@inertz:~>

Bash Prompt Escape Sequences

When executing interactively, bash displays the primary prompt PS1 when it is ready to read a command, and the secondary prompt PS2 when it needs more input to complete a command. Bash allows these prompt strings to be customized by inserting a number of backslash-escaped special characters that are decoded as follows:

\a an ASCII bell character (07)

\d the date in "Weekday Month Date" format(e.g., "Tue May 26")

\e an ASCII escape character (033)

\h the hostname up to the first `.'

\H the hostname

\j the number of jobs currently managed by the shell

\l the basename of the shell's terminal device name

\n newline

\r carriage return

\s the name of the shell, the basename of $0(the portion following the final slash)

\t the current time in 24-hour HH:MM:SS format

\T the current time in 12-hour HH:MM:SS format

\@ the current time in 12-hour am/pm format

\u the username of the current user

\v the version of bash (e.g., 2.00)

\V the release of bash, version + patchlevel(e.g., 2.00.0)

\w the current working directory

\W the basename of the current working directory

\! the history number of this command

\# the command number of this command

\$ if the effective UID is 0, a #, otherwise a $

\nnn the character corresponding to the octal number nnn

\\ a backslash

\[ begin a sequence of non-printing characters,which could be used to embed a terminal control sequence into the prompt

\] end a sequence of non-printing characters

Cuba taip arahan ini:-

azam@inertz:~> PS1="\u@\h \W> "

azam@inertz azam> ls

Bash-Prompt-HOWTO.html Documents kde_xp_full qinx-0.5 snapshot1.png

Desktop bashprompt public_html qnxstyle-0.2

azam@inertz azam>

Prompt adalah sama dengan kebanyakan sistem linux. Kita mahukan sesuatu yang berlainan.

Taip arahan ini:-

inertz@inertz inertz> PS1="[\t][\u@\h:\w]\$ "

[15:59:49][inertz@inertz:~]$ ls

Bash-Prompt-HOWTO.html Documents kde_xp_full qinx-0.5 snapshot1.png

Desktop bashprompt public_html qnxstyle-0.2

[16:00:24][inertz@inertz:~]$

Setting string PS? secara kekal

Setelah berpuashati dengan prompt anda,anda boleh set supaya prompt anda kekal dengan mengedit fail /etc/profile, /etc/bashrc danperlu diingat ia bergantung pada distro yang anda gunakan. Bagi setting secara individu fail .bash_profile atau .bashrc pada home direktori anda perlu diedit.