亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
最近訪(fǎng)問(wèn)板塊 發(fā)新帖
查看: 2583 | 回復(fù): 1
打印 上一主題 下一主題

如何修改命令提示信息?  關(guān)閉 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2004-02-10 21:26 |只看該作者 |倒序?yàn)g覽
在RH下,怎樣修改命令提示的信息。
比如:
當(dāng)前的顯示:[root@localhost /home]
改為:[/home],即只顯示路徑。

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2004-02-10 21:32 |只看該作者

如何修改命令提示信息?

轉(zhuǎn)的:
--------------------------------------------------------------------------------
時(shí)間:2003/06/06 出自:

  2001年08月20日13:57:03


  如果您很容易使 shell 提示行變得色彩絢爛斕且?guī)в懈嘈畔,為什么還要堅(jiān)持用單調(diào)的標(biāo)準(zhǔn) shell 提示行呢?在這篇技巧中,Daniel Robbins 將說(shuō)明如何獲得符合您的意愿的 shell 提示行,并會(huì)說(shuō)明如何動(dòng)態(tài)更新 X 終端的標(biāo)題欄。

  作為 Linux/UNIX 人,我們有很長(zhǎng)的時(shí)間是在 shell 中工作,并且在許多情況下,下面這一行就是始終盯著我們的那個(gè)提示行:

  bash-2.04$

  如果您恰巧是超級(jí)用戶(hù) (root),您就有權(quán)使用下面這個(gè)美麗的標(biāo)示“身份”的提示行版本:

  bash-2.04#

  這些提示行并不是十分漂亮。這也就難怪幾種 Linux 版本對(duì)默認(rèn)提示行進(jìn)行了升級(jí),在其中增加了顏色和更多的信息。但是,即便您恰好有一個(gè)本身帶有很好的彩色提示行的新式版本,它也不可能是完美無(wú)缺的。您或許希望在提示行中增加或更改幾種顏色,或者增加(或刪除)一些信息。從頭開(kāi)始設(shè)計(jì)屬于您自己的彩色的、經(jīng)過(guò)裝飾的提示行并不難。

  提示行基礎(chǔ)
  在 bash 下,可以通過(guò)更改 PS1 環(huán)境變量的值來(lái)設(shè)置提示行,如下所示:

  $ export PS1="> "
  >

  更改會(huì)立即生效,通過(guò)將 "export" 定義放在您的 ~/.bashrc 文件中可將這種更改固定下來(lái)。只要您愿意,PS1 可以包含任意數(shù)量的純文本:

  $ export PS1="This is my super prompt > "
  This is my super prompt >

  盡管這很有趣,但在提示行中包含大量靜態(tài)文本并不是特別有用。大多數(shù)定制的提示行包含諸如用戶(hù)名、工作目錄或主機(jī)名之類(lèi)的信息。這些花絮信息可以幫助您在 shell 世界中遨游。例如,下面的提示行將顯示您的用戶(hù)名和主機(jī)名:

  $ export PS1="u@H > "
  drobbins@freebox >

  這個(gè)提示行對(duì)于那些以多個(gè)不同名稱(chēng)的帳戶(hù)登錄多臺(tái)機(jī)器的人尤為有用,因?yàn)樗梢蕴嵝涯耗壳霸谀呐_(tái)機(jī)器上操作,擁有什么權(quán)限。

  在上面的示例中,我們使用了專(zhuān)用的用反斜杠轉(zhuǎn)義的字符序列,藉此通知 bash 將用戶(hù)名和主機(jī)名插入提示行中,當(dāng)這些轉(zhuǎn)義字符序列出現(xiàn)在 PS1 變量中時(shí),bash 就會(huì)用特定的值替換它們。我們使用了序列 "u"(表示用戶(hù)名)和 "H"(表示主機(jī)名的第一部分)。下面是 bash 可識(shí)別的全部專(zhuān)用序列的完整列表(您可以在 bash man page 的 "ROMPTING" 部分找到這個(gè)列表):

  序列 說(shuō)明
  a ASCII 響鈴字符(也可以鍵入 07)
  d "Wed Sep 06" 格式的日期
  e ASCII 轉(zhuǎn)義字符(也可以鍵入 33)
  h 主機(jī)名的第一部分(如 "mybox")
  H 主機(jī)的全稱(chēng)(如 "mybox.mydomain.com")
  j 在此 shell 中通過(guò)按 ^Z 掛起的進(jìn)程數(shù)
  l 此 shell 的終端設(shè)備名(如 "ttyp4")
  換行符
  回車(chē)符
  s shell 的名稱(chēng)(如 "bash")
  24 小時(shí)制時(shí)間(如 "23:01:01")
  T 12 小時(shí)制時(shí)間(如 "11:01:01")
  @ 帶有 am/pm 的 12 小時(shí)制時(shí)間
  u 用戶(hù)名
  v bash 的版本(如 2.04)
  V Bash 版本(包括補(bǔ)丁級(jí)別) ?/td>
  w 當(dāng)前工作目錄(如 "/home/drobbins")
  W 當(dāng)前工作目錄的“基名 (basename)”(如 "drobbins")
  ! 當(dāng)前命令在歷史緩沖區(qū)中的位置
  # 命令編號(hào)(只要您鍵入內(nèi)容,它就會(huì)在每次提示時(shí)累加)
  $ 如果您不是超級(jí)用戶(hù) (root),則插入一個(gè) "$";如果您是超級(jí)用戶(hù),則顯示一個(gè) "#"
  xxx 插入一個(gè)用三位數(shù) xxx(用零代替未使用的數(shù)字,如 "07")表示的 ASCII 字符
  反斜杠
  [ 這個(gè)序列應(yīng)該出現(xiàn)在不移動(dòng)光標(biāo)的字符序列(如顏色轉(zhuǎn)義序列)之前。它使 bash 能夠正確計(jì)算自動(dòng)換行。
  ] 這個(gè)序列應(yīng)該出現(xiàn)在非打印字符序列之后。

  這樣,您已經(jīng)知道了 bash 中用反斜杠轉(zhuǎn)義的全部專(zhuān)用序列。請(qǐng)稍微演練一下這些序列,以對(duì)它們的工作方式獲得一些感性認(rèn)識(shí)。在您做了一些測(cè)試之后,下面開(kāi)始添加顏色。

  彩色化
  添加顏色相當(dāng)容易;第一步是設(shè)計(jì)不帶顏色的提示行。然后,我們所要做的只是添加終端(而不是 bash)可識(shí)別的專(zhuān)用轉(zhuǎn)義序列,以使它以彩色顯示文本的某些部分。標(biāo)準(zhǔn) Linux 終端和 X 終端允許您設(shè)置前景(文字)顏色和背景顏色,如果需要,還可以啟用 "bold" 字符。有八種顏色可供我們選擇。

  顏色是通過(guò)在 PS1 中添加專(zhuān)用序列來(lái)選擇的 -- 基本上是夾在 "e["(轉(zhuǎn)義開(kāi)方括號(hào))和 "m" 之間數(shù)字值。如果指定一個(gè)以上的數(shù)字代碼,則用分號(hào)將它們分開(kāi)。下面是一個(gè)顏色代碼示例:

  "e[0m"

  如果將數(shù)字代碼指定為零,則它就會(huì)通知終端將前景、背景和加粗設(shè)置重置為它們的默認(rèn)值。您可能會(huì)在在提示行結(jié)束時(shí)使用這個(gè)代碼,以使您鍵入的文字成為非彩色的。現(xiàn)在,讓我們看一下這些顏色代碼。請(qǐng)注意下面的抓屏結(jié)果:

  要使用這個(gè)表,首先請(qǐng)查找您要使用的顏色,然后查找對(duì)應(yīng)的前景編號(hào) (30-37) 和背景編號(hào) (40-47)。例如,如果您喜歡黑底綠字,則可將編號(hào)分別設(shè)為 32 和 40。然后打開(kāi)您的提示行定義并在其中添加適當(dāng)?shù)念伾a。下面的定義:

  export PS1="w> "
  變?yōu)椋?
  export PS1="e[32;40mw> "

  到現(xiàn)在為止,提示行盡管已經(jīng)很不錯(cuò)了,但仍不太完美。在 bash 顯示出工作目錄以后,我們需要使用 "e[0m" 序列將顏色重新設(shè)置為正常值。

  export PS1="e[32;40mw> e[0m"

  這個(gè)定義將顯示一個(gè)漂亮的綠色提示行,但我們?nèi)孕枰鲆恍⿸呶补ぷ鳌N覀儾恍枰?"40" 這個(gè)背景顏色設(shè)置,因?yàn)樗鼘⒈尘霸O(shè)置為黑色,而黑色是默認(rèn)顏色。此外,綠色還很暗;我們通過(guò)添加一個(gè) "1" 顏色代碼來(lái)修正這個(gè)問(wèn)題,這將啟用更亮的加粗文字。除了這個(gè)修改之外,我們還需要將全部非打印字符用專(zhuān)用的 bash 轉(zhuǎn)義序列 "[" 和 "]" 括起來(lái)。這兩個(gè)序列通知 bash,被括起來(lái)的字符不占用行上的任何空間,這樣就使自動(dòng)換行能夠繼續(xù)正常工作。沒(méi)有這兩個(gè)轉(zhuǎn)義序列,盡管您有了一個(gè)非常漂亮的提示行,但是如果您鍵入的命令恰好到達(dá)終端的最右端,就會(huì)造成顯示混亂。下面是我們最終的提示行:

  export PS1="[e[32;1m]w> [e[0m]"

  別擔(dān)心在同一個(gè)提示行中使用幾種顏色,就像下面這樣:

  export PS1="[e[36;1m]u@[e[32;1m]H> [e[0m]"

  Xterm 中的樂(lè)趣
  我已說(shuō)明了如何在提示行中添加信息和顏色,但您還可以更進(jìn)一步。您可以通過(guò)在提示行中添加專(zhuān)用代碼來(lái)使 X 終端(如 rxvt 或 aterm)的標(biāo)題欄得到動(dòng)態(tài)更新。您所要做的只是將下面的序列添加到您的 PS1 提示行中:

  "e]2;titlebara"

  只須用您希望其出現(xiàn)在 xterm 標(biāo)題欄中的文字替換子串 "titlebar" 即可,現(xiàn)在已經(jīng)一切就緒了!不必使用靜態(tài)文字;您可以將 bash 轉(zhuǎn)義序列插入標(biāo)題欄中。請(qǐng)查看下面這個(gè)示例,它將用戶(hù)名、主機(jī)名和當(dāng)前工作目錄顯示在標(biāo)題欄中,并定義了一個(gè)簡(jiǎn)短、明亮的綠色提示行:

  export PS1="[e]2;u@H wae[32;1m]>[e[0m] "

  這就是我在上面的抓屏結(jié)果中所用的那個(gè)提示行。我喜歡這個(gè)提示行,因?yàn)樗鼘⑷啃畔@示在標(biāo)題欄上,而不是顯示在終端上,終端對(duì)一行可以顯示多少字符有限制。順便提一句,確保用 "[" 和 "]" 將您的標(biāo)題欄序列括起來(lái)(因?yàn)榫徒K端而言,這個(gè)序列是非打印序列)。將大量信息放在標(biāo)題欄中的問(wèn)題是,如果您使用非圖形終端(如系統(tǒng)控制臺(tái)),則看不到這些信息。為了解決這個(gè)問(wèn)題,可以在您的 .bashrc 中添加以下幾行:


  if [ "$TERM" = "linux" ]
  then
  #we're on the system console or maybe telnetting in
  export PS1="[e[32;1m]u@H > [e[0m]"
  else
  #we're not on the console, assume an xterm
  export PS1="[e]2;u@H wae[32;1m]>[e[0m] "
  fi

  這個(gè) bash 條件語(yǔ)句將根據(jù)當(dāng)前的終端設(shè)置動(dòng)態(tài)設(shè)置提示行。為了獲得一致性,您一定希望配置您的 ~/.bash_profile,以便它在啟動(dòng)時(shí)搜索 (source) 您的 ~/.bashrc。確保您的 ~/.bash_profile 文件中有以下這樣一行:


  source ~/.bashrc


  這樣,無(wú)論您開(kāi)啟一個(gè)登錄 shell 還是一個(gè)非登錄 shell,都會(huì)獲得同樣的提示行。

  好了,您已掌握了提示行魔術(shù),F(xiàn)在盡情享受一下,制作一個(gè)漂亮的彩色提示行吧!

  參考資源


  rxvt 是一款既好又小的 xterm,它恰好有大量關(guān)于轉(zhuǎn)義序列的文檔資料,這些資料都集中在源代碼 tar 包中的 "doc" 目錄下。
  aterm 是基于 rxvt 的另一款終端程序。它支持幾種很好的可視化特性,如透明和著色。
  bashish 是適用于各種終端的一種主題引擎。請(qǐng)查看工作中的 bashish 的一些很好的抓屏結(jié)果!
  作者簡(jiǎn)介
  Daniel Robbins 住在新墨西哥州的 Albuquerque,他是 Gentoo Technologies 公司的總載兼首席執(zhí)行官,他還是 Gentoo Linux(一種運(yùn)行于個(gè)人計(jì)算機(jī)上的高級(jí) Linux)和 Portage 系統(tǒng)(Linux 的下一代端口系統(tǒng))的創(chuàng)作者。他同時(shí)也是 Macmillan 出版的 Caldera OpenLinux Unleashed、SuSE Linux Unleashed 和 Samba Unleashed 幾本書(shū)的重要作者之一。由于深受 Pan Man 的影響,Daniel 在讀二年級(jí)時(shí)第一次接解到 Logo編程語(yǔ)言后即執(zhí)迷于計(jì)算機(jī)。這可能是他后來(lái)作為 SONY Electronic Publishing/Psygnosis 的首席圖形藝術(shù)家的原因。Daniel 喜歡與他的妻子 Mary 和他的新出生的女兒 Hadassah 共度美好時(shí)光?梢酝ㄟ^(guò) drobbins@gentoo.org 與 Daniel 聯(lián)系。
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專(zhuān)區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過(guò)ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP