ANSI转义序列

ANSI 转义序列是一组用于控制终端输出的格式、颜色和光标位置等属性的字符序列。它们通常以 `\033[` 或 `\e[` 开头(其中 `\033` 和 `\e` 都是表示转义字符的不同写法),后面跟随着表示特定功能的数字和字母。以下是一些常见的 ANSI 转义序列:

1. 光标位置控制:

   - 光标上移 n 行:`\033[nA`,其中 n 为移动的行数。
   - 光标下移 n 行:`\033[nB`,其中 n 为移动的行数。
   - 光标右移 n 列:`\033[nC`,其中 n 为移动的列数。
   - 光标左移 n 列:`\033[nD`,其中 n 为移动的列数。
   - E: 光标下移并移到行首
   - F: 光标上移并移到行首
   - 光标定位到第 y 行、第 x 列:`\033[y;xH` 或 `\033[y;xf`,其中 y 表示行,x 表示列。
   - 光标横向绝对定位(移动到当前行的第 n 列):`\033[nG`,G: 光标移动到指定列
   - H 或 f: 光标定位到指定行和列

2. 光标操作:

   - 保存当前光标位置:`\033[s`
   - 恢复之前保存的光标位置:`\033[u`

3. 清屏和清除行:

   - 清除从光标位置到行尾的内容:`\033[K`
   - 清除从光标位置到行首的内容:`\033[1K`
   - 清除整行:`\033[2K`
   - 清除从光标位置到屏幕尾的所有内容:`\033[J`
   - 清除从光标位置到屏幕首的所有内容:`\033[1J`
   - 清除整个屏幕:`\033[2J`

4. 文本属性和颜色:

   文本属性和颜色的 ANSI 转义序列的格式为 `\033[<attributes>m`,其中 `<attributes>` 是表示特定属性和颜色的数字代码,多个属性和颜色可以使用分号隔开。例如,`\033[1;32m` 表示设置文本为加粗和绿色。

   常见的文本属性和颜色代码如下:

   - 重置所有属性:\033[0m

   - 加粗:\033[1m

   - 倾斜:\033[3m

   - 下划线:\033[4m

   - 反显(前景色与背景色交换):\033[7m

   - 属性

     :

     - 恢复默认属性:0
     - 加粗:1
     - 低亮度(暗色):2
     - 斜体:3
     - 下划线:4
     - 闪烁:5
     - 反显:7
     - 隐藏:8

   - 前景色(文字颜色)

     1. 文字颜色:
        - 30: 黑色
        - 31: 红色
        - 32: 绿色
        - 33: 黄色
        - 34: 蓝色
        - 35: 品红(洋红)
        - 36: 青色
        - 37: 白色
     2. 背景颜色:
        - 40: 黑色
        - 41: 红色
        - 42: 绿色
        - 43: 黄色
        - 44: 蓝色
        - 45: 品红(洋红)
        - 46: 青色
        - 47: 白色
     3. 文字样式:
        - 0: 关闭所有属性
        - 1: 粗体(高亮)
        - 2: 低亮(暗色)
        - 4: 下划线
        - 5: 闪烁
        - 7: 反显(前景色与背景色交换)
        - 8: 隐藏
        - 22: 正常亮度(关闭1和2)
        - 24: 关闭下划线
        - 25: 关闭闪烁
        - 27: 关闭反显
        - 28: 关闭隐藏
Categories: ANSILinux

邢宇宇

我是一名热情的云原生架构师和Java开发者,专注于构建可扩展的大数据解决方案。我的职业旅程始于对代码的热爱和创新技术的追求。我拥有在云计算和大数据领域深厚的技术背景,这使我能够设计和实现高效、稳健的系统。 我擅长使用Java来开发高性能的应用程序,同时也深入研究了如何利用云服务来优化数据处理过程。我热衷于探索新技术,如容器化、微服务架构和自动化,这些都是当今构建和部署现代软件解决方案的关键元素。 在我的博客中,我分享我的专业知识和行业见解,探讨最佳实践,以及如何克服在云原生生态系统中遇到的挑战。我相信通过共享和协作,我们可以推动技术的发展,创造出更好的解决方案来解决复杂问题。欢迎加入我的技术之旅,与我一起深入云原生的世界!

0 Comments

发表回复

Avatar placeholder

您的电子邮箱地址不会被公开。 必填项已用*标注