linux命令提示符高亮
说明
- \033 或 \e :两者是等价的,表示转义字符(ASCII escape character),即键盘左上角的ESC键。033是ESC的八进制ASCII码。注意,在“老式”说法中,转义字符就是仅指八进制ASCII码033表示的字符,无他。像C语言中的反斜线 \ ,都是后来扩充的。[1][2]
- \033[ 或 \e[ :也就是 ESC[ ,是一种称为控制序列引导器(Control Sequence Introducer,CSI)的转义序列。所谓转义序列,本质上就是字符串,但终端不会将这些字符串作为普通的文本来显示,而是作为一种命令来执行。转义序列通常用于控制终端的显示细节(如光标位置、颜色、字体风格等)。CSI是转义序列的一种,特点是以 ESC[ 开头。[3]
- \e[m ( \e[0m 、 \e[00m 、 \033[m 、 \033[0m 、 \033[00m ):在设置命令提示符颜色时,表示“设置颜色的字符串”的结束,注意, \e[m 不是CSI的结束,和CSI没有关系,SCI也没有结束标志。
- \[ 和 \] :表示中间的字符串是非打印字符,如CSI。[4][5]
颜色控制码
传统颜色控制码为 L;F;Bm ,其中, L 取值为0或1(也可以是00或01),其中,0表示普通亮度,1表示高亮; F 表示字体颜色,取值为30-37(即30+X,X取0-7); B 表示背景色,取值为40-47。[5][2]
还有一种8-bit控制码,参考[2]中SGR--8-bit 一节。
另外一种控制码格式参考[6]。
例子
PS1='\[\e[38;5;39m\][\[\e[38;5;208m\]\u\[\e[38;5;160m\]@\[\e[38;5;69m\]\h\[\e[38;5;214m\]:\[\e[38;5;10m\]\w\[\e[38;5;39m\]]\[\e[38;5;11m\]\$ \[\e[0m\]'
参考
[1] 转义字符 - 维基百科,自由的百科全书
[2] Escape character - Wikipedia (重点是 SGR 一节)
[3] ansi escape - What this character sequence "\033[H\033[J" does in C? - Stack Overflow
[4] How to Change / Set up bash custom prompt (PS1) in Linux - nixCraft
[5] 自訂 Linux 的 Bash Shell 命令提示字串 Prompt(一):基本用法 - G. T. Wang[6] linux系统终端命令提示符设置(PS1)记录 - 散尽浮华 - 博客园
linux命令提示符高亮的更多相关文章
- 漂亮的Linux命令提示符
漂亮的Linux命令提示符 每天面对着白底黑字(黑底白字)的命令行是否枯燥泛味呢?生活应给是五彩缤纷的,何不为单调无味的生活增添一抹色彩? 下面一起体验一下Linux命令行提示符惊险的整容之旅 惊鸿一 ...
- linux命令提示符解析
linux命令提示符 命令窗口中[root@chengfeng ~]# 表示什么意思? root 当前登录终端的用户 chengfeng 主机名(/etc/ ...
- Server版Linux命令提示符揭秘
一直都在Ubuntu12.04和12.10 Desktop下玩.如今要在Centos6.3 Server版下做开发了,感觉还是非常不一样的. 克服一个有一个不顺利后,有那种站在山顶的 ...
- Linux命令提示符的配置
Linux登录过程中加载配置文件顺序: /etc/profile → /etc/profile.d/*.sh → ~/.bash_profile → ~/.bashrc → [/etc/bashrc] ...
- linux命令提示符[root@localhost ~]#详解
[root@localhost ~]# 1. @之前代表当前登录用户 在Linux中管理员用户是root,还有一些普通用户: 在此例中,root代表当前登录用户 2. @之后代表当前计算机主机 ...
- Linux命令提示符
命令提示符:prompt [root@localhost ~]# 用户@主机名 所在目录 用户身份(#管理员 $普通用户) 显示提示符格式 Ubuntu sun@u18-2:~$ echo $PS1 ...
- 修改Linux命令提示符
vim .bashrc export PS1='\e[1;32m\u\e[m\e[1;33m@\e[m\e[1;35m\h\e[m:\W\$'
- linux命令提示符设置
变成绿色 [root@localhost /usr/local]#vim /root/.bashrc # .bashrc # User specific aliases and functions a ...
- linux命令提示符上色
vi /etc/profile RED='\[\e[31;1m\]' Yello='\[\e[33;1m\]' Green='\[\e[32;1m\]' End='\[\e[0m\]' Pur='\[ ...
- Linux如何修改命令提示符
1.什么是命令提示符 命令提示符是CLI(command-line interface,命令行界面)在人机交互的过程中提示用户可以进行命令输入的特殊符号,在Linux中普通用户的prompt为“$”, ...
随机推荐
- C Primer Plus 第6版 第四章 编程练习参考答案
编译环境VS Code+WSL GCC 源码请到文末下载 /*第1题*************************/ #include<stdio.h> int main() { ch ...
- Chrome谷歌浏览器自动升级后页面字体过小
谷歌浏览器使用一段时间后系统自动升级后页面字体突然变小,如何进行设置呢,如下 1.在页面右上角选择浏览器设置-外观-自定义字体-设置字号等其他需要配置的参数即可
- manim边做边学--动画更新
今天介绍Manim中用于动画更新的3个类,分别是: UpdateFromFunc:根据自定义的函数来动态更新 Mobject 的属性 UpdateFromAlphaFunc:根据动画的进度来平滑地改变 ...
- 经典算法的Java实现
1.快速排序描述 1.每一轮排序选择一个基准点(pivot)进行分区 1.让小于基准点的元素进入一个分区,大于基准点的元素进入另一个分区 2.当分区完成时,基准点元素的位置就是其最终位置 2.在子分区 ...
- neo4j-图数据库
neo4j是图数据库 初识neo4j,首先我们要知道neo4j是图数据库.我们平常用的数据库一般是RDBMS(关系型数据库),那么什么是图数据库呢?既然有了关系型数据库,那么为什么要有图数据库呢? 1 ...
- 使用Hyper-V或者VM虚拟机安装部署Ubantu
下载Ubantu iso文件 Server版下载 桌面版下载 我使用的是22.04.3版本,目前22.04最新版是22.04.5版本 22.04下载 一.Hyper-V方式 1.安装Hyper-V 参 ...
- Transaction rolled back because it has been marked as rollback-only问题解决
1.背景 在我们的日常开发中,经常会存在在一个Service层中调用另外一个Service层的方法.比如:我们有一个TaskService,里面有一个execTask方法,且这个方法存在事务,这个方法 ...
- 另辟新径实现 Blazor/MAUI 本机交互(二)
Maui 基础 Preferences 是 .NET MAUI 提供的一个静态类,用于存储和检索应用程序的首选项(即设置或配置).它提供了一种简单的键值对存储机制,可以跨平台使用.每个平台使用其本地的 ...
- 动手学深度学习-python基础知识介绍(数据处理基础流程)part2
数据预处理 import os os.makedirs(os.path.join('..','data'),exist_ok=True) data_file=os.path.join('..','da ...
- Android开发之定时任务(AlarmManager、WorkManager)
Android 程序的定时任务主要有AlarmManager.WorkManager两种. 一.AlarmManager AlarmManager,又称闹钟,可以设置一次性任务,周期重复任务,定时重复 ...