linux篇—命令行高亮设置

tech2022-09-12  102

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中添加正则表达式

 

高亮效果如下:

参考:

命令行高亮配置

linux 命令行高亮显示

终端命令行的颜色高亮

修改bash终端命令行颜色

 

 

最新回复(0)