如何改變你的終端顏色
你可以使用特殊的 ANSI 編碼設置為 Linux 終端添加顏色,可以在終端命令或配置文件中動態添加,也可以在終端模擬器中使用現成的主題。無論哪種方式,你都可以黑色屏幕上找回懷舊的綠色或琥珀色文本。本文演示了如何使 Linux 變得豐富多彩(或單色)的方法。
終端的功能特性
現代系統的終端的顏色配置通常默認至少是 xterm-256color,但如果你嘗試為終端添加顏色但未成功,則應檢查你的 TERM
設置。
從歷史上看,Unix 終端從字面上講是:用戶可以輸入命令的共享計算機系統上實際的物理端點(終點)。它們專指通常用於遠程發出命令的電傳打字機(這也是我們今天在 Linux 中仍然使用 /dev/tty
設備的原因)。終端內置了 CRT 顯示器,因此用戶可以坐在辦公室的終端上直接與大型機進行交互。CRT 顯示器價格昂貴 —— 無論是製造還是使用控制;比擔心抗鋸齒和現代計算機專家理所當然認為的漂亮信息,讓計算機吐出原始 ASCII 文本更容易。然而,即使在那時,技術的發展也很快,很快人們就會發現,隨著新的視頻顯示終端的設計,他們需要新的功能特性來提供可選功能。
例如,1978 年發布的花哨的新 VT100 支持 ANSI 顏色,因此如果用戶將終端類型識別為 vt100,則計算機可以提供彩色輸出,而基本串列設備可能沒有這樣的選項。同樣的原則適用於今天,它是由 TERM
環境變數設定的。你可以使用 echo
檢查你的 TERM
定義:
$ echo $TERM
xterm-256color
過時的(但在一些系統上仍然為了向後兼容而維護)/etc/termcap
文件定義了終端和印表機的功能特性。現代的版本是 terminfo
,位於 /etc
或 /usr/share
中,具體取決於你的發行版。 這些文件列出了不同類型終端中可用的功能特性,其中許多都是由歷史上的硬體定義的,如 vt100 到 vt220 的定義,以及 xterm 和 Xfce 等現代軟體模擬器。大多數軟體並不關心你使用的終端類型; 在極少數情況下,登錄到檢查兼容功能的伺服器時,你可能會收到有關錯誤的終端類型的警告或錯誤。如果你的終端設置為功能特性很少的配置文件,但你知道你所使用的模擬器能夠支持更多功能特性,那麼你可以通過定義 TERM
環境變數來更改你的設置。你可以通過在 ~/.bashrc
配置文件中導出 TERM
變數來完成此操作:
export TERM=xterm-256color
保存文件並重新載入設置:
$ source ~/.bashrc
ANSI 顏色代碼
現代終端繼承了用於「元」特徵的 ANSI 轉義序列。這些是特殊的字元序列,終端將其解釋為操作而不是字元。例如,此序列將清除屏幕,直到下一個提示符:
$ printf ' 33[2J'
它不會清除你的歷史信息;它只是清除終端模擬器中的屏幕,因此它是一個安全且具有示範性的 ANSI 轉義序列。
ANSI 還具有設置終端顏色的序列。例如,鍵入此代碼會將後續文本更改為綠色:
$ printf ' 33[32m'
只要你對相同的計算機使用同一個顏色,就可以使用顏色來幫助你記住你登錄的系統。例如,如果你經常通過 SSH 連接到伺服器,則可以將伺服器的提示符設置為綠色,以幫助你一目了然地將其與本地的提示符區分開來。 要設置綠色提示符,請在提示符前使用 ANSI 代碼設置為綠色,並使用代表正常默認顏色的代碼結束:
export PS1=`printf "