1、查看系统PS1配置
# echo $PS1
[\u@\h \W]\$
2、修改配置文件~/.bashrc 或者.bash_profile文件
默认配置文件~/.bashrc
# cat -n ~/.bashrc
1 # .bashrc
2
3 # User specific aliases and functions
4
5 alias rm='rm -i'
6 alias cp='cp -i'
7 alias mv='mv -i'
8
9 # Source global definitions
10 if [ -f /etc/bashrc ]; then
11 . /etc/bashrc
12 fi
在该文件中添加:PS1=[\u@\h \W]\$
需要执行 命令:source .bashrc 实现永久生效
默认配置文件~/.bash_profile
# cat -n ~/.bash_profile
1 # .bash_profile
2
3 # Get the aliases and functions
4 if [ -f ~/.bashrc ]; then
5 . ~/.bashrc
6 fi
7
8 # User specific environment and startup programs
9
10 PATH=$PATH:$HOME/bin
11
12 export PATH
在该文件中添加: export PS1=[\u@\h \W]\$
重启终端即可实现永久生效
3、高亮效果
高亮效果0【默认】:
PS1=[\u@\h \W]\$
高亮效果1:
在命令行执行以下命令【临时有效】
# PS1='\[\e[37;40m\]\[\e[1m\][\[\e[35;40m\]\u\[\e[33;40m\]@\h \[\e[31;40m\]\# \[\e[37;40m\]\w]$\[\e[32;40m\]'
查看此时的$PS1变量
$echo $PS1 \[\e[37;40m\]\[\e[1m\][\[\e[35;40m\]\u\[\e[33;40m\]@\h \[\e[31;40m\]\# \[\e[37;40m\]\w]$\[\e[32;40m\]
执行以上命令后,会出现以下这种高亮
高亮效果2:
在命令行执行以下命令【临时有效】
# PS1='[\[\e[32;40m\]\u@\h \w \t]$ \[\e[0m\]'
查看此时的$PS1
$ echo $PS1
[\[\e[32;40m\]\u@\h \w \t]$ \[\e[0m\]
执行以上命令出现如下效果
高亮效果3:
PS1='[\[\e[33;40m\]\u@\h \w \t]$ '
高亮效果4:用户名字边颜色
PS1="\[\e[37;40m\][\[\e[33;40m\]\u\[\e[37;40m\]@\h \[\e[36;40m\]\w\[\e[0m\]]\\$ "
查看此时的$PS1
# echo $PS1
\[\e[37;40m\][\[\e[33;40m\]\u\[\e[37;40m\]@\h \[\e[36;40m\]\w\[\e[0m\]]\$
执行以上命令会出现以下效果:
高亮效果5:【重启终端】
vim .bash_profile
export PS1='[\[\e[01;31m\]\u\[\e[00m\]@\h: ] \w \[\e[01;31m\]\$ '
查看此时的PS1
# echo $PS1
[\[\e[01;31m\]\u\[\e[00m\]@\h: ] \w \[\e[01;31m\]\$
高亮效果如下:
解析:
[ ]这个方括号是自己加的无意义符号
\u表示用户
@表示@(这里是@)
\h表示host
:也是个无意义符号(这里是:)
\w表示当前目录(这里是~,即家目录)
$表示命令提示符(这里是$)
PS1的配色规则(即在shell当中颜色的表示码)
默认 : \e[00m
黑色 : \e[01;30m
红色 : \e[01;31m
绿色 : \e[01;32m
黄色 : \e[01;33m
蓝色 : \e[01;34m
洋红 : \e[01;35m
青色 : \e[01;36m
白色 : \e[01;37m
然后重启终端,就发现用户名和$处变成了红色了
PS1的常用参数以及含义:
\d :代表日期,格式为weekday month date,例如:"Mon Aug 1" \H :完整的主机名称 \h :仅取主机名中的第一个名字 \t :显示时间为24小时格式,如:HH:MM:SS \T :显示时间为12小时格式 \A :显示时间为24小时格式:HH:MM \u :当前用户的账号名称 \v :BASH的版本信息 \w :完整的工作目录名称 \W :利用basename取得工作目录名称,只显示最后一个目录名 \# :下达的第几个命令 \$ :提示字符,如果是root用户,提示符为 # ,普通用户则为 $ 所以linux默认的命令行提示信息的格式: PS1='[\u@\h \W]\$ ' 意思就是:[当前用户的账号名称@主机名的第一个名字 工作目录的最后一层目录名]
在PS1中设置字符颜色的格式为:
**\[\e[F;Bm\]........\[\e[0m\],其中“F“为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47,\[\e[0m\]作为颜色设定的结束。
颜色设置参数:
在PS1中设置字符颜色的格式为:**\[\e[F;Bm\]........\[\e[0m\],其中“F“为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47,\[\e[0m\]作为颜色设定的结束。
颜色对照表:
F B
30 40 黑色
31 41 红色
32 42 绿色
33 43 黄色
34 44 蓝色
35 45 紫红色
36 46 青蓝色
37 47 白色
只需将对应数字套入设置格式中即可。
比如要设置命令行的格式为绿字黑底(\[\e[32;40m\]),显示当前用户的账号名称(\u)、主机的第一个名字(\h)、完整的当前工作目录名称(\w)、24小时格式时间(\t),可以直接在命令行键入如下命令:
# PS1='[\[\e[32;40m\]\u@\h \w \t]$ \[\e[0m\]'
要修改linux终端命令行颜色,我们需要用到PS1,PS1是Linux终端用户的一个环境变量,用来说明命令行提示符的设置。在终端输入命令:#set,即可在输出中找到关于PS1的定义如下:
PS1='[\u@\h \W]\$ '
PS1的定义中个常用的参数的含义如下:
\d :#代表日期,格式为weekday month date,例如:"Mon Aug 1"
\H :#完整的主机名称
\h :#仅取主机的第一个名字
\t :#显示时间为24小时格式,如:HH:MM:SS
\T :#显示时间为12小时格式
\A :#显示时间为24小时格式:HH:MM
\u :#当前用户的账号名称
\v :#BASH的版本信息
\w :#完整的工作目录名称
\W :#利用basename取得工作目录名称,所以只会列出最后一个目录
\# :#下达的第几个命令
\$ :#提示字符,如果是root时,提示符为:# ,普通用户则为:$
高亮效果6:
工具→突出显示集→关键字栏【添加 ([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})】
在xshell中添加正则表达式
高亮效果如下:
参考: