Colors
KornShell 中的彩色提示
根據這個 StackOverflow 文章,在 KornShell 中可能有一個彩色提示。我一直無法弄清楚如何做到這一點。我可以使用顏色:
echo -e "\033[34mLinux\033[00m"
給出藍色的“Linux”輸出,如下所示:
printf "\033[34mLinux\033[00m"
但是,當我將轉義碼合併到
PS1
提示變數中時,它們並沒有被轉義。我需要做什麼才能獲得彩色提示?除了作為一種吸引眼球的東西之外,我發現在視覺解析輸出時,彩色提示很有用。
只需使用文字 Esc 字元,輸入
Ctrl
-v
,Esc
(將顯示^[
在螢幕上):PS1="^[[34mLinux^[[00m"
或者使用
echo
您發現有效的命令的輸出:PS1="$(echo -e "\033[35mLinux\033[00m")"
您需要在
PS1
變數中放置一個文字轉義字元。Ksh88 和 pdksh 和 mksh 等複製(舊版本)沒有控製字元的文字語法,除非通過\e
轉義,但 pdksh 需要八進制程式碼\033
。PS1=$(print '\033[34mLinux\033[00m')
ATT ksh93 引入了反斜杠轉義的文字語法
$'…'
(自 R39b 起在 mksh 中也可用)。您可以使用反斜杠轉義將控製字元放入這些文字中。PS1=$'\e[34mLinux\e[00m'