shell設置顏色


   使用Shell顏色 bash


   首先使用一個例子來講明如何實現Shell彩色:ide

   PS1="\[ \033[0;32;40m\u@\h:\w\$ \033[0m \]" 字體


   這時候就會顯示以下的提示符: 編碼


   在上面命令中,「\033[0;32;40m」表示定義後面文本的顏色,「\033」表示啓動一個轉義序列,「[」定義開始顏色定義,「0」定義默認的字體顏色,其它部分稍後定義。「32」定義文本的前景色,這裏32表示綠色;「40」定義文本的背景色,40表示黑色。在字符串的最後定義了「 \033[0m」,它是用來恢復了默認的文本顏色設置,這樣就只會獲得一個彩色提示符,而不會影響命令和其輸出的顏色顯示(即黑底白字)。 字符串


   咱們一共有8種字體顏色可供選擇,它們分別是30 (黑色)、31 (紅色)、32 (綠色)、33 (×××)、34 (藍色)、35 ( 紫紅色)、36 (青色)和37 (白色)。對於底色也有8種顏色可供選擇,只須要將字體顏色的3修改成4便可,例如40、4一、4二、4三、4四、4五、4六、47。 it


   例如,運行下面命令:console

   ~/.bashrc: PS1="\[\033[0;37;44m\u@\033[0;32;43m\h:\033[0;33;41m\w$\033[0m\]" class


   將顯示以下彩色提示符: 程序


   或者腳本

   PS1="\[\033[1;34;40m[\033[1;31;40m\u@\h:\w\033[1;34;40m]\033[1;37;40m $\033[0;37;0m\] "


   將顯示以下彩色提示符:


   文本屬性


   咱們前面提到,轉義序列符後面的「0」表示定義文本的顏色設置。除了顏色設置之外,還能夠設置文本的其它屬性。轉義序列符後能夠跟如下數值:0、一、2二、四、2四、2五、七、27,分別定義顏色、黑體、非黑體、下畫線、非下畫線、閃爍、非閃爍、翻轉、非翻轉。經過下面的腳本咱們能夠看到全部的效果:


#!/bin/sh



for attr in 0 1 4 5 7 ; do

   echo "----------------------------------------------------------------"

   printf "ESC[%s;Foreground;Background - \n" $attr

   for fore in 30 31 32 33 34 35 36 37; do

       for back in 40 41 42 43 44 45 46 47; do

           printf '\033[%s;%s;%sm %02s;%02s  ' $attr $fore $back $fore $back

       done

   printf '\n'

   done

   printf '\033[0m'

done




   在Shell環境下設置顏色的能力,不單單可以使得Shell提示符看上去更豐富多彩和吸引人,並且能有助於幫助基於console的Linux程序的互動性和趣味性。(T111)



編碼 顏色/動做


  0   從新設置屬性到缺省設置

  1   設置粗體

  2   設置一半亮度(模擬彩色顯示器的顏色)

  4   設置下劃線(模擬彩色顯示器的顏色)

  5   設置閃爍

  7   設置反向圖象

  22  設置通常密度

  24  關閉下劃線

  25  關閉閃爍

  27  關閉反向圖象

  30  設置黑色前景

  31  設置紅色前景

  32  設置綠色前景

  33  設置棕色前景

  34  設置藍色前景

  35  設置紫色前景

  36  設置青色前景

  37  設置白色前景

  38  在缺省的前景顏色上設置下劃線

  39  在缺省的前景顏色上關閉下劃線

  40  設置黑色背景

  41  設置紅色背景

  42  設置綠色背景

  43  設置棕色背景

  44  設置藍色背景

  45  設置紫色背景

  46  設置青色背景

  47  設置白色背景

  49  設置缺省黑色背景

相關文章
相關標籤/搜索