Linux 设置PS1变量颜色

修改PS1 可以设置提示符格式

一、PS1 说明

提示符格式说明:

● \e 控制符\033
● \u 当前用户
● \h 主机名简称
● \H 主机名
● \w 当前工作目录
● \W 当前工作目录基名
● \t 24小时时间格式
● \T 12小时时间格式
● !  命令历史数
● # 开机后命令历史数

二、修改PS1

2.1 临时修改

直接输入如下命令,即可实现

PS1='\[\e[1;35m\][\u@\h \W]\$\[\e[0m\] '
2.2 永久修改

修改文件,有多种方式,可以修改.bashrc 也可以新增env.sh文件

Ubuntu

PS1="\[\e[1;35m\][\u@\h \W]\$\[\e[0m\] "

效果图

Rocky CentOS

echo 'PS1="\[\e[1;32m\][\t \[\e[1;33m\]\u\[\e[35m\]@\h\[\e[1;31m\] \W\[\e[1;32m\]]\[\e[0m\]\\$ "' > /etc/profile.d/env.sh
echo 'PS1="\[\e[1;32m\][\[\e[0m\]\[\e[1;33m\]\u\[\e[36m\]@\h\[\e[1;31m\] \W\[\e[1;32m\]]\[\e[0m\]\\$ "' > /etc/profile.d/env.sh

效果图

三、颜色定义

在终端中,ANSI定义了用于屏幕显示的Escape屏幕控制码
具有颜色的字符,PS1中的格式如下:

\e[F;Bm
"\033[字符背景颜色;字体颜色m字符串\033[0m"

# e = 033  效果一致

其中字体颜色,编号30~37;背景色,编号40~47
\033[30m -- \033[37m 设置前景色
\033[40m -- \033[47m 设置背景色
● 可通过\e[0m关闭颜色输出;
● 特别的,当背景色为1时,将显示加亮加粗的文字。

详细请看下面的颜色表与代码表。

#字符背景颜色范围: 40--47
40:黑
41:红
42:绿
43:黄
44:蓝
45:紫
46:深绿
47:白色

#字体颜色: 30--37
30: 黑
31: 红
32: 绿
33: 黄
34: 蓝
35: 紫
36: 深绿
37: 白色

加颜色只是以下控制码中的一种,下面是常见的一些ANSI控制码:

\033[0m 关闭所有属性
\033[1m 设置高亮度
\033[4m 下划线
\033[5m 闪烁
\033[7m 反显
\033[8m 消隐
\033[nA 光标上移n行
\033[nB 光标下移n行
\033[nC 光标右移n行
\033[nD 光标左移n行
\033[x;yH 设置光标位置x行y列
\033[2J 清屏
\033[K 清除从光标到行尾的内容
\033[s 保存光标位置
\033[u 恢复光标位置
\033[?25l 隐藏光标
\033[?25h 显示光标
\033[2J\033[0;0H 清屏且将光标置顶

四、范例

字体颜色

[01:18:19 root@rocky8 ~]# echo -e "\033[30m 黑色字 \033[0m"
[01:18:25 root@rocky8 ~]# echo -e "\033[31m 红色字 \033[0m"
[01:18:29 root@rocky8 ~]# echo -e "\033[32m 绿色字 \033[0m"
[01:18:45 root@rocky8 ~]# echo -e "\033[33m 黄色字 \033[0m"
[01:18:50 root@rocky8 ~]# echo -e "\033[34m 蓝色字 \033[0m"
[01:18:54 root@rocky8 ~]# echo -e "\033[35m 紫色字 \033[0m"
[01:19:10 root@rocky8 ~]# echo -e "\033[36m 天蓝色字 \033[0m"
[01:19:19 root@rocky8 ~]# echo -e "\033[37m 白色字 \033[0m"

在这里插入图片描述

背景色效果

[01:19:23 root@rocky8 ~]# echo -e "\033[40;37m 黑底白字 \033[0m"
 黑底白字
[01:20:49 root@rocky8 ~]# echo -e "\033[41;37m 红底白字 \033[0m"
 红底白字
[01:20:55 root@rocky8 ~]# echo -e "\033[42;37m 绿底白字 \033[0m"
 绿底白字
[01:21:00 root@rocky8 ~]# echo -e "\033[40;33m 黑底黄字 \033[0m"
 黑底黄字
[01:21:46 root@rocky8 ~]# echo -e "\033[47;33m 白底黄字 \033[0m"
 白底黄字

在这里插入图片描述

控制效果

[01:25:28 root@rocky8 ~]# echo -e "\033[4;41;37m 红底白字下划线 \033[0m"
 红底白字下划线
[01:26:39 root@rocky8 ~]# echo -e "\033[5;41;37m 红底白字闪烁 \033[0m"
 红底白字闪烁
[01:26:52 root@rocky8 ~]# echo -e "\033[7;41;37m 红底白字反显 \033[0m"
 红底白字反显
[01:27:08 root@rocky8 ~]# echo -e "\033[8;41;37m 红底白字消隐 \033[0m"
 红底白字消隐

在这里插入图片描述

背景色为 1 的时候

[01:28:11 root@rocky8 ~]# echo -e "\033[4;1;37m 红底白字下划线 \033[0m"
 红底白字下划线

在这里插入图片描述

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值