UNIX字符界面顏色設置

在UNIX字符界面下顯示有8種不一樣顏色,printf打印基本格式以下:函數

    printf("\x1b[%d;%dm%s\x1b[%dm", backcolor, frountcolor, str, control);字體

分別的表示以下:字符串

    第一個%d:backcolor表示顯示字符串的背景顏色,其值以下表所示:基礎

    第二個%d:frountcolor表示字體顏色,其值以下表所示:方法

QUOTE:
字背景顏色範圍: 40--49                   字顏色: 30--39 
             40: 黑                          30: 黑
             41: 紅                          31: 紅
             42: 綠                          32: 綠
             43: 黃                          33: 黃
             44: 藍                          34: 藍
             45: 紫                          35: 紫
             46: 深綠                        36: 深綠
             47: 白色                        37: 白色  co

    第三個%s:str 表示須要顯示的字符串單例

    第四個%d:control表示ANSI控制碼,其值以下表所示:字符

 

ANSI控制碼:return

QUOTE:
      \x1b[0m      關閉全部屬性   
      \x1b[1m     設置高亮度  
      \x1b[4m     下劃線  
      \x1b[5m     閃爍  
      \x1b[7m     反顯  
      \x1b[8m     消隱  
      \x1b[30m   --  \x1b[37m   設置前景色  
      \x1b[40m   --  \x1b[47m   設置背景色  
      \x1b[nA    光標上移n行  
      \x1b[nB    光標下移n行  
      \x1b[nC    光標右移n行  
      \x1b[nD    光標左移n行  
      \x1b[y;xH  設置光標位置  
      \x1b[2J    清屏  
      \x1b[K     清除從光標到行尾的內容  
      \x1b[s     保存光標位置  
      \x1b[u     恢復光標位置  
      \x1b[?25l  隱藏光標  
      \x1b[?25h  顯示光標界面

 

例子:

int main()
{
    int i, j;

    for(i=40; i<48; i++)
        for(j=30; j<38; j++)
        {
            printf("\x1b[%d;%dmhello world\n\x1b[0m",i, j);
        }

    return 0;
}

 

這是一個簡單例子,能夠在此基礎上修改。須要說明的是若是在SecureCRT上顯示的話,須要將ANSI開啓。

除了用printf函數打印以外,還能夠用echo輸出。這裏不作說明,方法同樣。

相關文章
相關標籤/搜索