PS1應用之——修改linux終端命令行各字體顏色

  最近在學習linux操做系統(CentOS 6 & CentOS 7)。以爲linux終端命令行所有爲白色,會常常致使命令與輸出內容難以分辨。因而上網找到修改linux終端命令行顏色的方法,發現經過定義PS1環境變量便可實現,下面我以root用戶身份進行操做。html

 

1.瞭解PS1linux

  PS1是Linux終端用戶的一個環境變量,用來定義命令行提示符的參數。vim


  在終端輸入命令:bash

# echo $PS1

  可獲得當前PS1的定義值:post

PS1='[\u@\h \W]\$ '

 

  PS1的經常使用參數以及含義:學習

  \d :表明日期,格式爲weekday month date,例如:"Mon Aug 1"測試

  \H :完整的主機名稱字體

  \h :僅取主機名中的第一個名字url

  \t :顯示時間爲24小時格式,如:HH:MM:SSspa

  \T :顯示時間爲12小時格式

  \A :顯示時間爲24小時格式:HH:MM

  \u :當前用戶的帳號名稱

  \v :BASH的版本信息

  \w :完整的工做目錄名稱

  \W :利用basename取得工做目錄名稱,只顯示最後一個目錄名

  \# :下達的第幾個命令

  \$ :提示字符,若是是root用戶,提示符爲 # ,普通用戶則爲 $

 

  因此linux默認的命令行提示信息的格式
   PS1='[\u@\h \W]\$ '  的意思就是:[當前用戶的帳號名稱@主機名的第一個名字 工做目錄的最後一層目錄名]#

 

2.顏色設置參數

  在PS1中設置字符顏色的格式爲:\[\e[F;Bm\]........\[\e[0m\],其中「F「爲字體顏色,編號爲30-37,「B」爲背景顏色,編號爲40-47,\[\e[0m\]做爲顏色設定的結束。

  顏色對照表:

    F    B

    30  40 黑色

    31  41 紅色

    32  42 綠色

    33  43 黃色

    34  44 藍色

    35  45 紫紅色

    36  46 青藍色

    37  47 白色

   只需將對應數字套入設置格式中便可。
  好比要設置命令行的格式爲綠字黑底(\[\e[32;40m\]),顯示當前用戶的帳號名稱(\u)、主機的第一個名字(\h)、完整的當前工做目錄名稱(\w)、24小時格式時間(\t),能夠直接在命令行鍵入以下命令:

# PS1='[\[\e[32;40m\]\u@\h \w \t]$ \[\e[0m\]'

 

  通過屢次測試後,最終肯定了一個適合我本身的格式:

# PS1="\[\e[37;40m\][\[\e[32;40m\]\u\[\e[37;40m\]@\h \[\e[36;40m\]\w\[\e[0m\]]\\$ "

 

  但注意這樣的設置只是臨時性的.

 

3.修改.bashrc文件,永久保存命令行樣式.

  上面的設置的做用域只有當前終端的登錄有效,關閉終端或退出登陸即刻失效。要想永久性的保存設置,須要修改.bashrc配置文件。

  鍵入命令:

1 # cd
2 # ls -la

 

  如今能夠看到.bashrc這個文件。

  編輯.bashrc:

# vim .bashrc

 

  加入這一行:

   PS1="\[\e[37;40m\][\[\e[32;40m\]\u\[\e[37;40m\]@\h \[\e[36;40m\]\w\[\e[0m\]]\\$ " 

  保存退出。

  從新加載bash配置文件:

# source .bashrc

 

  便可當即並永久生效了。

 

  效果如圖,不再怕在茫茫字海中苦苦搜尋命令行的下落了.

 

: 本知識點來自於原做者博文《修改linux終端命令行顏色》,並作了些改進.感謝做者依舊淡然的分享.

相關文章
相關標籤/搜索