您的位置 首页 linux常用命令

Linux ps1颜色

Linux系统中PS1命令详解

首先PS1 是一个全局变量
作用: 用于定义用户命令行的字符显示。
我们可以在窗口 查看 这个变量的值:
echo $PS1
我们 可以看到默认的值是
[\u@\h \W]\$
什么意思呢? 白眉大叔给大家翻译一下:
# '\u'代表当前bash的用户名
# '\h'代表当前的主机名(只显示第一个名字)
# '\W'代表当前工作目录名称
# '\$'是提示字符,当前用户为root用户时,会显示为'#',为普通用户时,会显示为'$'
# ' '是空格字符,样式中也显示为空格
我们来对比一下:

# 其他转义字符

# '\d': 日期
# '\t': 24小时格式时间 HH:MM:SS
# '\T': 12小时格式时间
# '\A': 12小时格式时间 HH:MM
# '\H': 完整的主机名称
# '\v': 当前BASH的版本信息
# '\w': 当前完整的工作目录名称,家目录在显示时会以'~'代替

'[\u@\h \W]\$ '
# '[', ']'表示普通字符,对应样式中的'[', ']'
# '\u'代表当前bash的用户名
# '\h'代表当前的主机名(只显示第一个名字)
# '\W'代表当前工作目录名称
# '\$'是提示字符,当前用户为root用户时,会显示为'#',为普通用户时,会显示为'$'
# ' '是空格字符,样式中也显示为空格

 

# 颜色设置

# '\e[?m': 设置颜色,?处填写数字代表颜色
# '\e[m': 取消颜色设置
# '\[\e[?m\]': 这部分放在字符串左边用来控制其后显示的字符串的前景色
# '\[\e[?;?m\]': 同上,第一个?号表示前景色,第2个?表示背景色

# 综上字符显示的控制格式为: '\[ \e[A;F;Bm \]',此设置会对其后字符串生效
# A代表加粗、下划线样式,编号0-8
# F代表字体颜色值,编号30-37
# B代表背景颜色值,编号40-47
# 如果不想有某样式,直接省略即可

  1. 编号对应格式


# 字体样式A:编号0-7
# 0 关闭所有属性
# 1 高亮显示
# 2 所有字符都有下划线
# 3 斜体
# 4 用户输入输出带有下划线
# 7 反显,有字符的地方有背景

 

# 字体F、背景B颜色
# F B Color
# 30 40 black
# 31 41 red
# 32 42 green
# 33 43 yellow
# 34 44 blue
# 35 45 purple-red
# 36 46 green-blue
# 37 47 white

  1. 常用PS1格式

# 初始情况
PS1 = '[\u@\h \W]\$ '
# 去掉中括号>>>
PS1 = '\u@\h \W\$ '
# 字体颜色变为紫红色并高亮显示
PS1 = '\[\e[1;35m\]\u@\h \W\$ '
# 仅让\u@\h(用户名@主机名第一个名字)紫红色高亮显示
PS1 = '\[\e[1;35m\]\u@\h\[0m\] \W\$ '
# 在此基础上让当前目录字体(非高亮)显示黄色
PS1 = '\[\e[1;35m\]\u@\h\[\e[0m\] \[\e[33m\]\W\$ '
# 在主机名之后加冒号(无颜色设置)并将当前目录替换成完整目录 'W'-> 'w'
PS1 = '\[\e[1;35m\]\u@\h\[\e[0m\]:\[\e[33m\]\w\$ '
# 让当前目录颜色不要影响到$的颜色
PS1 = '\[\e[1;35m\]\u@\h\[\e[0m\]:\[\e[33m\]\w\[\e[0m\]\$ '
# 让$显示为蓝色,且不影响到后面的命令
PS1 = '\[\e[1;35m\]\u@\h\[\e[0m\]:\[\e[33m\]\w\[\e[0m\]\[\e[34m\]\$\[\e[0m\] '

我们尝试 在$PS1变量中增加一下 日期,测试一下:
案例:
类似:
#命令提示符参数 修改
vi /etc/profile  
PS1="[\[\e[34;1m\]\u@\[\e[0m\]\[\e[32;1m\]\H\[\e[0m\]\[\e[31;1m\] \w\[\e[0m\]]\\$"

 

欢迎来撩 : 汇总all

白眉大叔

关于白眉大叔linux云计算: 白眉大叔

热门文章