Command-Line

$PS1 中的 38;5 序列是什麼?

  • December 14, 2019

我試圖在網上查找資訊,但我找不到任何資訊。似乎許多人使用特定的數字序列,但實際上並沒有提供任何解釋。

更具體地說,我$PS1的 in bash 如下:

\[\033[38;5;21m\][\[\033[38;5;20m\]\u@\[\033[38;5;1m\]\h \W\[\033[38;5;21m\]]\[\033[0m\]\$

我無法理解38;5順序是什麼。有人知道那是38;5嗎?

我知道是做什麼的,但我不知道就是這樣!我的意思是,我知道我必須使用它來分配下一個值(即 38;5;1m,1m 是下一個值)作為前景色並使用 256 種顏色的值,但我不知道為什麼38 以及為什麼 5 以及還有哪些其他選項以及這些選項代表什麼。

例如,為什麼38我們必須使用5or2而不是1or 3?有沒有3848程式碼都對應的一般形式?例如,是否有任何通用形式的程式碼類似於<code>;<switch>;<value>the3848具有的東西?

有什麼幫助嗎?

最初程式碼來自 DEC,作為其 VT52/VT100/VT220 系列串列顯示控制台的一部分。這些後來被標準化為 ECMA 和 ANSI 的一部分,並隨著時間的推移而擴展。

您可以從 1979 年看到一份這樣的早期ECMA 標准文件,特別是文件的第 40 頁(PDF 文件的第 48 頁)第 7.2.63 SGR 部分。該ESC [ 38序列保留供將來使用。這些顏色表是將來使用的。

引用自:https://unix.stackexchange.com/questions/551933