8個實用而有趣Bash命令提示行

8個實用而有趣Bash命令提示行

趙錕

原文:http://coolshell.cn/?p=1399 (酷殼

 

很多人都對過命令行提示的重要性不屑一顧,甚至是一點都不關心。但是我卻一點都不這麼認爲,一個好的命令行提示可以改變你使用命令的方式。爲此,我在internet上找到一些非常實用,優秀,並有趣的bash的命令行提示。下面我將我最喜歡使用的一些命令行提示羅列如下。

注意  -  要使用下面這些提示,你可以拷貝粘貼這些以”PS1″打頭的內容到你的終端上,爲了使你的改變永久生效,還要將這些內容粘貼到你使用用戶的~/.bashrc文件中去。

 

1. 在成功執行的命令上增加一個笑臉符號

這個命令提示行可能是這個命令行提示列表中最有趣的一個,但是它也依然有使用的價值。這個提示的想法是基於當你命令被成功執行,你將會得到一個笑臉作爲你的命令行提示,一旦的命令執行失敗,命令行提示將會換成一個哭臉。

例子:

bashprompts-happyface

代碼:

PS1=”/`if [ /$? = 0 ]; then echo /[/e[33m/]^_^/[/e[0m/]; else echo /[/e[31m/]O_O/[/e[0m/]; fi/`[/u@/h:/w]//$ “

2.更改失敗命令的顏色

下面這個命令行提示是我最喜歡的命令行之一。和上一個相似,這個命令行提示的顏色會在你最後一個命令運行失敗後改變,而且這個命令行長路徑會縮短輸入命令的空間,這個命令提示還包含了bash 每個歷史命令的命令號,以方便重新提取運行。

例子:

bashprompts-hurring

代碼:

PS1=”/[/033[0;33m/][/!]/`if [[ /$? = "0" ]]; then echo “//[//033[32m//]“; else echo “//[//033[31m//]“; fi/`[/u./h: /`if [[ `pwd|wc -c|tr -d " "` > 18 ]]; then echo “//W”; else echo “//w”; fi/`]/$/[/033[0m/] “; echo -ne “/033]0;`hostname -s`:`pwd`/007″‘

3. 多行提示

如果你是喜歡命令行提示中包含完整信息的那一類人,那麼下邊就有一個適合於你的命令行提示。這個命令行提示信息中包含日期/時間,全路徑,用戶,主機,活動終端,甚至包含文件數和佔用空間等。

例子:


bashprompts-informant

代碼:

PROMPT_COMMAND=’PS1=”/n/[/033[35m/]/$(/bin/date)/n/[/033[32m/]/w/n/[/033[1;31m/]/u@/h: /[/033[1;34m/]/$(/usr/bin/tty | /bin/sed -e ’s:/dev/::’): /[/033[1;36m/]/$(/bin/ls -1 | /usr/bin/wc -l | /bin/sed ’s: ::g’) files /[/033[1;33m/]/$(/bin/ls -lah | /bin/grep -m 1 total | /bin/sed ’s/total //’)b/[/033[0m/] -> /[/033[0m/]“‘

 

4. 多顏色提示

這個命令行提示除了使用了不同顏色來區別不同信息外,它並沒有很特別的地方。就像你看到的那樣,它提供了時間,用戶名,主機名,當前目錄。相當少的信息,但是非常地實用。

例子:

bashprompts-4

代碼:

PS1=”/[/033[35m/]/t/[/033[m/]-/[/033[36m/]/u/[/033[m/]@/[/033[32m/]/h:/[/033[33;1m/]/w/[/033[m/]/$ “

 

5.顯示完整路徑

這是一個良好,簡潔,最小的2行提示(加上頂上的空行)。在第一行你能得到一個全路徑信息,在第二行是一個用戶名。如果你對每個命令提示行的空行不爽的話,你只要移走第一個/n就OK了

例子:

bashprompts-5

代碼:

PS1=”[/[/033[32m/]/w]/[/033[0m/]/n/[/033[1;36m/]/u/[/033[1;33m/]-> /[/033[0m/]“

 

6. 顯示後臺運行任務數

這是另外的一個兩行提示,但是這個兩行提示具有更多的之前我們沒有的信息。第一行是顯示通常的user@host和全路徑等信息。在第二行我們可以得到命令執行歷史序號和一個後臺運行任務個數信息。

例子:

 

bashprompts-6

代碼:

PS1=’/[/e[1;32m/]/u@/H:/[/e[m/] /[/e[1;37m/]/w/[/e[m/]/n/[/e[1;33m/]hist:/! /[/e[0;33m/] /[/e[1;31m/]jobs:/j /$/[/e[m/] ‘

 

7. 顯示路徑信息

這是一個非常眩的設計。我們可以從這個命令行提示信息的第一行中獲取到用戶/主機,運行任務數,和時間日期等信息。在第二行我們可以得到當前目錄的文件數和他們佔用的磁盤空間。

例子:

 

bashprompts-7

代碼:

PS1=”/n/[/e[30;1m/]/[/016/]l/[/017/](/[/e[34;1m/]/u@/h/[/e[30;1m/])-(/[/e[34;1m/]/j/[/e[30;1m/])-(/[/e[34;1m/]/@ /d/[/e[30;1m/])->/[/e[30;1m/]/n/[/016/]m/[/017/]-(/[/[/e[32;1m/]/w/[/e[30;1m/])-(/[/e[32;1m/]/$(/bin/ls -1 | /usr/bin/wc -l | /bin/sed ’s: ::g’) files, /$(/bin/ls -lah | /bin/grep -m 1 total | /bin/sed ’s/total //’)b/[/e[30;1m/])–> /[/e[0m/]“

8. My Prompt

最後這個命令提示行是我個人最喜歡的使用的命令提示行。它是#7的一個修改,這個命令提示行只包含我最希望知道的信息,因此節省了它的佔用空間。我偏愛兩行風格,因爲這樣不僅可以讓我看到全路徑信息,而且不影響我命令輸入的可視空間。

例子:

bashprompts-8

代碼:

PS1=”/n/[/e[32;1m/](/[/e[37;1m/]/u/[/e[32;1m/])-(/[/e[37;1m/]jobs:/j/[/e[32;1m/])-(/[/e[37;1m/]/w/[/e[32;1m/])/n(/[/[/e[37;1m/]! /!/[/e[32;1m/])-> /[/e[0m/]“

如果你願意共享你的命令提示行,請在將這些命令提示代碼加在下面的評論中。

PS1=”/n/[/033[35m/]/$(/bin/date)/n/[/033[32m/]/w/n/[/033[1;31m/]/u@/h: /[/033[1;34m/]/$(/usr/bin/tty | /bin/sed

-e ’s:/dev/::’): /[/033[1;36m/]/$(/bin/ls -1 | /usr/bin/wc -l | /bin/sed ’s: ::g’) files /[/033[1;33m/]/$(/bin/ls -lah | /bin/grep -m 1 total | /bin/sed ’s/total //’)b/[/033[0m/] -> /[/033[0m/]”

 出處

發佈了120 篇原創文章 · 獲贊 785 · 訪問量 590萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章