1. 程式人生 > >linux環境下PS1變量配置

linux環境下PS1變量配置

正常 字體 方括號 內容 環境 背景 line linux環境 此外

我的ps1命令提示符:PS1="\[\e[32;40m\][ \[\e[32;40m\]\u \[\e[32;40m\]>>\h \[\e[32;40m\]\w \[\e[36;40m\](\A) \[\e[32;40m\]] \[\e[0m\]\$"

1. 設置ps1變臉的顯示

PS1(是數字1而不是字母l),每個版本bash的PS1變量內的特殊符號可能有些小的差異,你可以先man bash 一下。下面是FC4環境下默認的特殊符號所代表的意義:

\d :代表日期,格式為weekday month date,例如:"Mon Aug 1"

\H :完整的主機名稱。例如:我的機器名稱為:fc4.linux,則這個名稱就是fc4.linux

\h :僅取主機的第一個名字,如上例,則為fc4,.linux則被省略

\t :顯示時間為24小時格式,如:HH:MM:SS

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

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

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

\v :BASH的版本信息

\w :完整的工作目錄名稱。家目錄會以 ~代替

\W :利用basename取得工作目錄名稱,所以只會列出最後一個目錄

\# :下達的第幾個命令

\$ :提示字符,如果是root時,提示符為:# ,普通用戶則為:$

默認的PS1內容為: PS1=‘[\u@\h \W]\$ ‘ ,所以默認的提示符就是: [root@linux ~]#。

  PS:此部分內容轉帖自 http://os.chinaunix.net/a2008/0909/985/000000985306.shtml

2. 設置ps1變量的顏色

我們能夠通過配置PS1變量使提示符成為彩色。在PS1中配置字符序列顏色的格式為: \[\e[F;Bm\] 基本上是夾在 "\e["(轉義開方括號)和 "m" 之間數字值。假如指定一個以上的數字代碼,則用分號將他們分開。 其中 F 為字體顏色,編號30~37; B 為背景色,編號40~47。 可通過 \e[0m 關閉顏色輸出;特別的,當B為1時,將顯示加亮加粗的文字,請看下面的顏色表和代碼表。 顏色表 前景 背景 顏色 --------------------------------------- 30 40 黑色 31 41 紅色 32 42 綠色 33 43 黃色 34 44 藍色 35 45 紫色 36 46 青色 37 47 白色 代碼 意義 ------------------------- 0 OFF 1 高亮顯示 4 underline 5 閃爍 7 反白顯示 8 不可見 假如想要配置終端提示符的樣式只要把$PS1在~/.bahrc指定即可 "\e[0m" 假如將數字代碼指定為零,則他就會通知終端將前景、背景和加粗配置重置為他們的默認值。您可能會在在提示行結束時使用這個代碼,以使您鍵入的文字成為非彩色的。現在,讓我們看一下這些顏色代碼。請註意下面的抓屏結果: 要使用這個表,首先請查找您要使用的顏色,然後查找對應的前景編號 (30-37) 和背景編號 (40-47)。例如,假如您喜歡黑底綠字,則可將編號分別設為 32 和 40。然後打開您的提示行定義並在其中添加適當的顏色代碼。下面的定義: export PS1="\w> " 變為: export PS1="\e[32;40m\w> " 到現在為止,提示行盡管已很不錯了,但仍不太完美。在 bash 顯示出工作目錄以後,我們需要使用 "\e[0m" 序列將顏色重新配置為正常值。 export PS1="\e[32;40m\w> \e[0m" 這個定義將顯示一個漂亮的綠色提示行,但我們仍需要做一些掃尾工作。我們無需包括 "40" 這個背景顏色配置,因為他將背景配置為黑色,而黑色是默認顏色。此外,綠色還很暗;我們通過添加一個 "1" 顏色代碼來修正這個問題,這將啟用更亮的加粗文字。除了這個修改之外,我們還需要將全部非打印字符用專用的 bash 轉義序列 "\[" 和 "\]" 括起來。這兩個序列通知 bash,被括起來的字符不占用行上的任何空間,這樣就使自動換行能夠繼續正常工作。沒有這兩個轉義序列,盡管您有了一個很漂亮的提示行,但是假如您鍵入的命令恰好到達終端的最右端,就會造成顯示混亂。 PS:此部分轉帖自 http://blog.chinaunix.net/uid-13954789-id-3137184.html

linux環境下PS1變量配置