ANSI 转义码是一组控制码,用于在文本中添加格式化和颜色。这些码以 ESC(Escape)字符为开头,通常是 `\x1b`,后面紧跟着一系列参数和指令。在 ANSI 标准中,这些码通常用于控制终端的文本输出。
下面是一些常见的 ANSI 转义码和它们的含义:
- **颜色:**
- `\x1b[30m` 到 `\x1b[37m`:设置文本颜色为黑、红、绿、黄、蓝、洋红、青、白。
- `\x1b[90m` 到 `\x1b[97m`:设置文本颜色为明亮的黑、红、绿、黄、蓝、洋红、青、白。
- `\x1b[39m`:重置文本颜色为默认值。
- **背景颜色:**
- `\x1b[40m` 到 `\x1b[47m`:设置背景颜色为黑、红、绿、黄、蓝、洋红、青、白。
- `\x1b[100m` 到 `\x1b[107m`:设置背景颜色为明亮的黑、红、绿、黄、蓝、洋红、青、白。
- `\x1b[49m`:重置背景颜色为默认值。
- **样式:**
- `\x1b[0m`:重置所有样式。
- `\x1b[1m`:粗体或增加亮度。
- `\x1b[2m`:弱化文本(降低亮度)。
- `\x1b[3m`:斜体。
- `\x1b[4m`:下划线。
- `\x1b[5m`:慢闪烁。
- `\x1b[6m`:快闪烁。
- `\x1b[7m`:反显。
- `\x1b[8m`:隐藏(不可见)。
- **光标控制:**
- `\x1b[H` 或 `\x1b[;H`:将光标移动到屏幕的左上角。
- `\x1b[2J`:清除整个屏幕。
- `\x1b[K`:清除从光标到行尾的内容。
- `\x1b[nA`:将光标向上移动 n 行。
- `\x1b[nB`:将光标向下移动 n 行。
- `\x1b[nC`:将光标向右移动 n 列。
- `\x1b[nD`:将光标向左移动 n 列。
- `\x1b[s`:保存光标位置。
- `\x1b[u`:恢复光标位置。
其中颜色部分:
这只是一小部分 ANSI 转义码的示例,有很多其他可用的码。这些码主要用于控制文本样式和颜色,以及在终端中控制光标的位置。
如详细要了解,可参考此链接:https://zh.wikipedia.org/wiki/ANSI%E8%BD%AC%E4%B9%89%E5%BA%8F%E5%88%97