修改bash提示字符串(username@hostname:~$)的方法

发布时间:2020-06-22编辑:脚本学堂
当我们打开一个终端或是运行一个shell时,都会看以类似于user@hostname: /home/$的提示字符串。

当我们打开一个终端或是运行一个shell时,都会看以类似于user@hostname: /home/$的提示字符串。
不同GNU/linux发行版中的提示及颜色会略有不同。
我们可以使用PS1环境变量来定制提示文本。
默认的shell提示文本是在文件~/bashrc中的某一行来设置的。

1)、可以使用如下命令列出设置PS1的那一行:
 

复制代码 代码如下:
$ cat ~/bash.rc | grep PS1
PS1='${debian_chroot:+($debian_chroot)}u@h:w$ '

2)、如果要设置提示字符串,可以输入:
 

复制代码 代码如下:
slynux@localhost: ~$ PS1="PROMPT>"
PROMPT> Type commands here #提示字符串已经改变

3)、可以使用类似e[1;31的特定转义序列来设置彩色的提示字符串。

  附文:
    在终端生成彩色输出相当好玩,我们可以使用转义序列来实现。
    每种颜色都有对应的颜色码。比如:重置=0, 黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35,青色=36,白色=37。

    要打印彩色文本,可输入如下命令:
   

复制代码 代码如下:
echo -e "e[1;31m This is red text e[0m"

    e[1;31将颜色设为红色,e[0m将颜色重新置回。你只需要将31替换成想要的颜色就可以了。

    要设置彩色背景,经常使用的颜色码是:重置=0,黑色=40,红色=41,绿色=42,黄色=43,蓝色=44,洋红=45,青色=46,白色=47。
    要打印彩色文本,可以输入如下命令:
   

复制代码 代码如下:
echo -e "e[1;42m Green Background e[0m"

还有一些特殊的字符可以扩展成系统参数。
例如:u可以扩展为用户名,h可以扩展为主机名,而w可以扩展为当前工作目录。