同样是linux,为什么shell登录后显示的前缀会不同呢,有些显示包含当前的用户名、主机名等信息,而有些仅显示一个#,如下图:
其实,shell登陆后具体显示的内容由环境变量”PS1″控制,我们可以
echo $PS1
查看一下当前的”PS1″环境变量的内容
通过修改用户的“home”目录下的.bashrc配置文件,添加内容
export PS1=”\u@\h \w> ”
或修改全局配置文件”/etc/profile”
具体的配置内容见这篇文章:
http://www.thegeekstuff.com/2008/09/bash-shell-ps1-10-examples-to-make-your-linux-prompt-like-angelina-jolie/
文章目录 [显示]
The PS1 in this 0 example displays the following three information in the prompt:
-bash-3.2$ export PS1="\u@\h \w> "
ramesh@dev-db ~> cd /etc/mail
ramesh@dev-db /etc/mail>
In the PS1 environment variable, you can directly execute any Linux command, by specifying in the format $(linux_command). In the following example, the command $(date) is 0 executed to display the current time inside the prompt.
ramesh@dev-db ~> export PS1="\u@\h [\$(date +%k:%M:%S)]> "
ramesh@dev-db [11:09:56]>
You can also use \t to display the current time in the hh:mm:ss format as shown below:
ramesh@dev-db ~> export PS1="\u@\h [\t]> "
ramesh@dev-db [12:42:55]>
You can also use \@ to display the current time in 12-hour am/pm format as shown below:
ramesh@dev-db ~> export PS1="[\@] \u@\h> "
[04:12 PM] ramesh@dev-db>
You can display output of any Linux command in the prompt. The following example displays three items separated by | (pipe) in the command prompt:
ramesh@dev-db ~> kernel_version=$(uname -r)
ramesh@dev-db ~> export PS1="\!|\h|$kernel_version|\$?> "
473|dev-db|2.6.25-14.fc9.i686|0>
Display prompt in blue color, along with username, host and current directory information
$ export PS1="\e[0;34m\u@\h \w> \e[m" [Note: This is for light blue prompt] $ export PS1="\e[1;34m\u@\h \w> \e[m" [Note: This is for dark blue prompt]
Color Code Table:
Black 0;30 Blue 0;34 Green 0;32 Cyan 0;36 Red 0;31 Purple 0;35
原创文章,转载请注明: 转载自 吴川斌的博客 http://www.mr-wu.cn/
本文链接地址: Linux shell控制台改变显示前缀 http://www.mr-wu.cn/bash-shell-ps1/
文章评论(0条评论)
登录后参与讨论